linux調試時經常會需要在終端打印一些log,如果遇到打印中文出現亂碼的情況可能是以下情況導致:
1. 源代碼的字符編碼格式和終端的顯示編碼格式不一致
源碼中的字符編碼格式可以使用notpad進行顯示和設置:
如打開源碼文件,
在notpad右下角狀態欄即為當前文檔中的字符編碼詳細信息
Unit(LF)是相對windowsWindows的CR LF 區別是linux系統和windows系統中的回車換行的表示方式不同:
- Mac系統里,每行結尾是“<回車>”
- Unix系統里,每行結尾只有“<換行>”,即“\n”;
- Windows系統里面,每行結尾是“ <回車><換行>”,即“\r\n”;
GB2312就是文檔的編碼格式,使用notpad可以對這種編碼格式進行轉換
接下來就打開linux終端 設置對應的顯示編碼格式 如下
在代碼中再使用printf進行打印終端就正常了