[ Windows/VSCode ] VSCode 編譯 C/C++ 控制檯輸出中文亂碼

在網上找以及本身測試獲得的答案:java

VSCode 與 cmd 二者之間的編碼方式不同:VSCode 默認是 utf-8 編碼,而在中國地區下的 Windows 的 cmd 默認是 GBK 編碼。測試

 

 

解決方法(已經測試了C/C++,java這個比較特殊,首先它不能在 VSCode 控制檯裏進行輸入,其次它在 VSCode 和 cmd 編碼方式同樣【都爲 GBK】的狀況下並不能成功顯示中文,所以算是失敗,若是有誰知道,請告訴我。):編碼

方法一:更改 cmd 或者 vscode 的編碼方式:spa

進入程序所在的目錄,運行程序。如個人 cpp 程序在 D:/c/test.exe:code

進入cmd後輸入以下命令:blog

D:    進入到驅動器
cd c    進入到 c 目錄下
chcp 65001    轉換編碼方式
test.exe    運行程序

就能夠在字符編碼爲 utf-8 的狀況下,將程序輸出中文。utf-8

vs code控制檯:cmd

chcp 65001
.\test.exe

方法二:更改 vscode 程序源文件的編碼方式(如下兩種均可以,我會講利弊):字符編碼

①直接點擊下面的 utf-8 class

 

咱們選擇經過其餘編碼保存,而後輸入 GBK 就能使用GBK 中文編碼方式保存咱們的源文件,而後再運行程序

這個方法的可以讓咱們在 cmd 終端裏面正常顯示中文,可是在 vscode 裏面中文就會顯示亂碼!若是咱們想在 vscode 終端裏面顯示正常,那麼咱們逆向操做就能夠了。

②咱們按住 【Ctrl + ,】進入設置,輸入 encoding 而後把 utf-8 換成 GBK

 

 這樣咱們全部的程序都會經過 GBK 來進行編碼,注意:咱們全部的程序都會被編碼爲 GBK 格式,因此若是你沒有打開過的程序裏有中文的話,再更改編碼格式以後會出現大量的中文亂碼(英文不受影響)。

這個方法的好處是可以一勞永逸,你能夠不對每個文件都從新編碼保存,可是帶來的後果是你的程序被從新編碼以後極可能會出現大量亂碼

第二種方法裏的兩種方式都能在必定程度上解決問題,請根據本身的須要進行選擇。

相關文章
相關標籤/搜索