您尚未登录。

#1 2017-08-09 18:29:52

xtricman
喵了个咪
注册时间: 2012-12-26
帖子: 267

GCC是如何处理输入文件的?[我好像问了很多次]

首先msys2的mingw32/gcc 7.1能正确的处理带BOM的UTF-8源码(它会自动无视BOM)
其次GCC官方FAQ说它5之后的版本都默认开了标识符扩展能接受任意字符串做标识符
所以一个虽然不一定但我觉得很自然的想法是GCC会将源文件当成UTF-8纯文本解析成字符序列再进入预处理过程
但是它似乎对GBK源码中的汉字字符串没有关于UTF8结构非法的任何警告?而且hexdump看程序还会正确的输出源码中被双引号扩住的字节。
所以GCC是如何处理源文件的?

离线

页脚