1.修改源文件保存編碼
settings->Editor->gernal settings 右邊的Encoding group Box
Use encoding when opening files: 這個表示打開文件用的格式,第一次保存文件的時候也會用這個格式。
As default encoding: 表示設置為文件缺省保存和打開編碼格式
注意,要先設置好,然后保存文件,才有效。如果你已經保存了文件,無論你怎么修改這個設置,也不會改變你文件的格式了。你的文件還是保持第一次保存的時候的格式。
所以,如果遇到無法生效,只能先設置好格式,再重新建文件了
2.修改編譯器對源文件解釋編碼格式和生成執行文件執行時候采用的編碼格式
settings->compiler and debugger settings 選擇對應的GCC編譯器
在other options里面加入:
-finput-charset=charset
-fexec-charset=charset
第一個參數表示編譯的時候輸入文件的編碼解釋格式,第二參數表示生成的執行文件執行的時候顯示用的編碼格式。
這些參數如果和實際不吻合,必然產生亂碼。只要吻合,就不會亂碼了。
由於我的源文件格式是WINDOWS-936,但是這里設置成UTF-8,所以編譯肯定報錯!
只需要修改成-finput-charset=WINDOWS-936或者GBk,就編譯通過了。
如果不設置fexec-charset默認會認為執行環境是UTF-8,而windows下並不是,所以Linux下沒問題,因為Linux就是UTF-8的,但是windows 下必然出現亂碼。
所以設置成GBK,就統一了。
原文地址:http://blog.csdn.net/softman11/article/details/6121538
簡單整理了下~