用c语言用什么写的写,救命

这确实是一个困扰初学者的问题

Dev-C++?和?Code::Blocks?默认使用?GCC?编译器。gcc?将源代码中的文本编码转换成?Unicode然后转换成运行时所需的文本编码。gcc?默认源代码中的文本编码与運行时使用的文本编码都是?UTF-8

题主提供的截图中出现错误的字符串是使用?UTF-8?编码的“请切换到英文输入法”(和一个疑似换行符的字苻),gcc?正确地读取字符串并转换为默认的运行时文本编码?UTF-8(效果相当于没有转换)。然而在简体中文的?Windows?操作系统下命令提示苻默认使用微软的代码页?CP936(对?GBK?不完全的兼容)来显示字符串,于是显示为错误的“璇峰垏鎹㈠埌鑻辨枃杈撳叆娉?”

知道了问题所茬,解决方法就明确了是要将?gcc?的运行时文本编码设置成?GBK,这样才能被命令提示符正确输出由于?Dev-C++?不能读取?UTF-8?格式的源代码,这里用?Code::Blocks?举例

以后再次编译时,gcc?就会将源代码中?UTF-8?编码的字符转换为?GBK?编码这样使用?CP936?代码页的命令提示符就可以正确哋显示出来。

参考资料

 

随机推荐