linux下codeblock控制台有些中文输出不了

reme 发布于 2013/05/24 10:15
阅读 849
收藏 0
我在linux做宽字节与窄字节的转换,在处理中文的时候,已经处理正确,但是在控制台输出的时候有的中文能显示出来,有些中文显示不出来,就是一个小框框,但是把数据写到文件去的时候是正常的,也就是说数据是对的。所以有些汉字显示不出来是怎么回事呢?求赐教!!!!
加载中
0
Appcrashes
Appcrashes
1. 编辑器的编码选择为UTF-8
   (1) 编译器为GNU GCC Compiler时,需要在Settings>Compiler and debugger settings>Global compiler settings中
   Selected compiler选择GNU GCC Compiler,Compiler settings的Other options中加入 -fexec-charset=GBK,GUI界面及C/C++代码中的中文才能正常显示;


   常用的选择为:
   -fexec-charset=GBK -finput-charset=GBK


2. 在编译工程时,Console Log中会出现乱码,可以在Settings>Environment Settings>Environment variables中添加LANG=C
0
reme
reme

引用来自“Onlyou”的答案

1. 编辑器的编码选择为UTF-8
   (1) 编译器为GNU GCC Compiler时,需要在Settings>Compiler and debugger settings>Global compiler settings中
   Selected compiler选择GNU GCC Compiler,Compiler settings的Other options中加入 -fexec-charset=GBK,GUI界面及C/C++代码中的中文才能正常显示;


   常用的选择为:
   -fexec-charset=GBK -finput-charset=GBK


2. 在编译工程时,Console Log中会出现乱码,可以在Settings>Environment Settings>Environment variables中添加LANG=C
我的代码是考虑跨平台的,所以源文件的编码是在win上写的ANSI编码,另外 -fexec-charset=GBK 加入时会导致真正的乱码出现。现在的问题是有些中文字正常,有些中文字就输出不来,但实际上数据是正确的。
返回顶部
顶部