linux调试时经常会需要在终端打印一些log,如果遇到打印中文出现乱码的情况可能是以下情况导致:
1. 源代码的字符编码格式和终端的显示编码格式不一致
源码中的字符编码格式可以使用notpad进行显示和设置:
如打开源码文件,
在notpad右下角状态栏即为当前文档中的字符编码详细信息
Unit(LF)是相对windowsWindows的CR LF 区别是linux系统和windows系统中的回车换行的表示方式不同:
- Mac系统里,每行结尾是“<回车>”
- Unix系统里,每行结尾只有“<换行>”,即“\n”;
- Windows系统里面,每行结尾是“ <回车><换行>”,即“\r\n”;
GB2312就是文档的编码格式,使用notpad可以对这种编码格式进行转换
接下来就打开linux终端 设置对应的显示编码格式 如下
在代码中再使用printf进行打印终端就正常了