欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

VSCode中C/C++編碼亂碼問題的兩種解決方法

 更新時間:2025年03月17日 10:46:08   作者:vortex5  
在中國地區(qū),Windows 系統(tǒng)中的 cmd 和 PowerShell 默認編碼是 GBK,但 VSCode 默認使用 UTF-8 編碼,這種編碼不一致會導致在 VSCode 終端中運行 C/C++ 程序時出現(xiàn)亂碼,以下介紹兩種方法來解決這一問題,需要的朋友可以參考下

問題

在中國地區(qū),Windows 系統(tǒng)中的 cmd 和 PowerShell 默認編碼是 GBK,但 VSCode 默認使用 UTF-8 編碼。這種編碼不一致會導致在 VSCode 終端中運行 C/C++ 程序時出現(xiàn)亂碼。以下介紹兩種方法來解決這一問題。

方法一:通過 Code Runner 插件調(diào)整編碼

我們可以借助 VSCode 的 Code Runner 插件來解決編譯和執(zhí)行 C/C++ 代碼時的編碼問題。首先確保已安裝 Code Runner 插件,安裝完成后,即可方便地通過“Run Code”按鈕或快捷鍵 Ctrl + Alt + N 來編譯和運行代碼。

配置步驟

  • 按下 Ctrl + , 打開 VSCode 設置頁面。
  • 在設置搜索欄中輸入 code runner,找到 Executor Map 設置項,選擇 在 settings.json 中編輯。

  • 在 settings.json 文件中,找到 “code-runner.executorMap”,修改C和C++ 的配置如下
    "c": "cd $dir && gcc $fileName -o $fileNameWithoutExt -finput-charset=UTF-8 -fexec-charset=GBK && .\\$fileNameWithoutExt",
    "cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt -finput-charset=UTF-8 -fexec-charset=GBK && .\\$fileNameWithoutExt"

相比原來只是在gcc后面添加了 -finput-charset=UTF-8 -fexec-charset=GBK 意思是把UTF-8編寫的文件用GBK來進行編碼。

  • -finput-charset=UTF-8 指定輸入文件的編碼為 UTF-8。
  • -fexec-charset=GBK 指定編譯生成的可執(zhí)行文件在終端中使用 GBK 編碼。

此時,運行 C/C++ 程序時,將采用 GBK 編碼顯示輸出,避免亂碼。

方法二:在 PowerShell 中調(diào)整編碼

如果大家平時習慣使用 PowerShell,那么可以通過以下配置將 PowerShell 的輸入輸出編碼調(diào)整為 UTF-8。這種方式不僅簡單有效,還可以徹底解決終端中的亂碼問題。

配置步驟

  • 打開 PowerShell 配置文件 profile.ps1(如未創(chuàng)建則新建)。

  • 在文件中添加以下代碼:

$OutputEncoding = [console]::InputEncoding = [console]::OutputEncoding = New-Object System.Text.UTF8Encoding

這條指令將 PowerShell 的輸入和輸出編碼都設置為 UTF-8,確保在終端中運行程序時,不會出現(xiàn)編碼不匹配導致的亂碼問題。

注意事項

  • 此配置方法僅對 PowerShell 有效,不適用于 cmd。
  • 如果切換到其他編碼,請在 profile.ps1 文件中重新配置相應的編碼。

總結

以上兩種方法分別適用于不同的場景。如果您經(jīng)常在 VSCode 中使用 Code Runner 運行代碼,推薦方法一;如果習慣直接使用 PowerShell 終端,推薦方法二。根據(jù)您的實際需求選擇合適的配置,便可以有效避免 C/C++ 程序的編碼問題。

到此這篇關于VSCode中C/C++編碼亂碼問題的兩種解決方法的文章就介紹到這了,更多相關VSCode C/C++編碼亂碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 一篇文章徹底弄懂C++虛函數(shù)的實現(xiàn)機制

    一篇文章徹底弄懂C++虛函數(shù)的實現(xiàn)機制

    C++中的虛函數(shù)的作用主要是實現(xiàn)了多態(tài)的機制,基類定義虛函數(shù),子類可以重寫該函數(shù),在派生類中對基類定義的虛函數(shù)進行重寫時,需要在派生類中聲明該方法為虛方法,這篇文章主要給大家介紹了關于如何通過一篇文章徹底弄懂C++虛函數(shù)的實現(xiàn)機制,需要的朋友可以參考下
    2021-06-06
  • C?語言輸入輸出庫函數(shù)講解(最新推薦)

    C?語言輸入輸出庫函數(shù)講解(最新推薦)

    輸入輸出函數(shù)能夠讓程序和用戶或者文件進行交互,這篇文章主要介紹了C?語言輸入輸出庫函數(shù)講解,需要的朋友可以參考下
    2025-04-04
  • C++?多態(tài)虛函數(shù)的底層原理深入理解

    C++?多態(tài)虛函數(shù)的底層原理深入理解

    這篇文章主要介紹了C++?多態(tài)虛函數(shù)的底層原理深入理解,多態(tài)是在不同繼承關系的類對象,去調(diào)用同一函數(shù),產(chǎn)生了不同的行為,通常是父類調(diào)用子類的重寫函數(shù),在C++中就是?父類指針指向子類對象,此時父類指針的向下引用就可以實現(xiàn)多態(tài)
    2022-08-08
  • C語言 函數(shù)指針(指向函數(shù)的指針)詳解

    C語言 函數(shù)指針(指向函數(shù)的指針)詳解

    本文主要介紹 C語言函數(shù)指針的知識,這里整理了詳細的資料及示例代碼以便大家學習參考,有需要學習此部分知識的朋友可以參考下
    2016-08-08
  • qt中 painter 的用法及原理示例詳解

    qt中 painter 的用法及原理示例詳解

    QPainter是Qt的一個繪圖類,它的主要任務是在繪圖設備上進行2D圖形渲染,這篇文章主要介紹了qt中 painter 的用法以及原理,需要的朋友可以參考下
    2023-07-07
  • C++11中l(wèi)ambda、std::function和std:bind詳解

    C++11中l(wèi)ambda、std::function和std:bind詳解

    大家都知道C++11中增加了許多的新特性,下面在這篇文中我們就來聊一下lambda表達式,閉包,std::function以及std::bind。文中介紹的很詳細,相信對大家具有一定的參考價值,有需要的朋友們下面來一起看看吧。
    2017-01-01
  • c語言實現(xiàn)的幾種常用排序算法

    c語言實現(xiàn)的幾種常用排序算法

    C,語言常用的排序方法有很多種。比如說冒泡排序,直接交換排序,直接選擇排序,直接插入排序,二分插入排序,快速排序,歸并排序等等,下面這篇文章主要給大家介紹了關于c語言實現(xiàn)幾種常用的排序算法,需要的朋友可以參考下
    2021-06-06
  • C++高并發(fā)內(nèi)存池的實現(xiàn)

    C++高并發(fā)內(nèi)存池的實現(xiàn)

    本文主要介紹了C++高并發(fā)內(nèi)存池的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-07-07
  • C++實現(xiàn)簡易通訊錄

    C++實現(xiàn)簡易通訊錄

    這篇文章主要為大家詳細介紹了C++實現(xiàn)簡易通訊錄,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • APUE筆記之:進程環(huán)境詳解

    APUE筆記之:進程環(huán)境詳解

    本篇文章是對APUE 進程環(huán)境詳解進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05

最新評論