vs编码对编译的影响(UTF-8 no BOM编译通不过)
VS的编译器对Unicode源代码支持如下:
UTF-16 little endian with or without byte order mark (BOM)。
UTF-16 big endian with or without BOM。
UTF-8 with BOM 。
带签名也就是带 BOM 信息,不带签名就是不带 BOM。
BOM,即 Byte Order Mark,也即字节流标记,它是用来让应用程序识别所用的编码的。UTF-8 的 BOM 是 0xEFBBBF。
相关问题
很多人经常需要把代码分别在linux、windows上编译。在linux中gcc编译的时候,文件格式为utf-8无bom格式,可是如果将文件拿到windows上,用vs编译的时候,发现各种报错,且都是不知道原因的错。
这个时候就要考虑代码中注释部分含有中文汉字,导致的。
注释的时候,使用 /**/注释即可