问:

我用gcc编程为啥不显示中文?我要怎么办

答:
在gcc编程中显示中文的问题,主要有以下几个方面需要注意:
1. 文件编码。源代码文件必须使用支持中文的编码,如UTF-8。可以在文件开头添加注释/ -- coding: utf-8 -- /来指定编码。
2. 程序内指定编码。在C语言程序中,需要使用wctomb、mbtowc等函数来正确转换中文字符,这需要程序指定正确的locale。可以在程序开头使用setlocale(LC_ALL, "")来自动获取系统locale;或直接指定为"zh_CN.utf8"。
3. 软件界面显示问题。由于历史原因,gcc默认在命令行下使用ASCII编码,无法直接显示中文。此时需要设置正确的CodePage来支持中文显示。
在Windows下,可以在cmd中输入chcp 65001来设置UTF-8 CodePage。
在Linux下,需要设置正确的locale,方法同上。
4. 输出重定向问题。当程序输出重定向到文件时,同样需要确保文件使用UTF-8等支持中文的编码,否则中文会乱码。可以使用freopen函数来指定输出文件的编码:
freopen("output.txt", "w", stdout);
// 然后在文件开头添加编码声明 / -- coding: utf-8 -- /
5. 编译链接参数。在gcc编译和链接时,需要增加参数来支持中文。在Windows下添加-fexec-charset=cp936或-finput-charset=cp936,在Linux下添加-finput-charset=utf8。
总结起来,要在gcc下正确显示中文,需要:
1) 源代码文件和输出文件使用UTF-8编码并声明;
2) 程序中指定正确的locale如zh_CN.utf8;
3) 软件界面使用支持中文的CodePage如65001;
4) gcc编译时增加-finput-charset=utf8等参数。
遵循以上几点,gcc编程时一般可以很好的支持中文显示。如果仍有问题可以在评论中提出,我会尽量解答。