问题遇到的现象和发生背景
用代码块功能插入代码,请勿粘贴截图
运行结果及报错内容 D:\My code blocks\week16\main.c|18|error: converting to execution character set: Illegal byte sequence|
我的解答思路和尝试过的方法
我想要达到的结果想问一下为什么编译的时候所有的printf()函数都这样报错了
中文字符编码问题导致。Windows(中文)默认的字符集是Windows-936(GBK),而GCC编译器默认编译的时候是按照UTF-8解析的,当未指定字符集时一律当作UTF-8进行处理。
需要在编译选项中加入,-finput-charset -fexecute-charset。
或者将编译器文件默认编码直接改为utf-8。