我知道如果我在vs中使用unicode字符集,我可以使用L"There is a string"
来呈现unicode字符串。当vs进行词法分析时,我认为There is a string
将从srouce文件中读取,它会将There is a string
解码为来自源文件编码的unicode。visual studio如何解析来自不同编码源文件的unicode字符串?
我已将源文件更改为某些不同的编码,但我总是从L
marco获得正确的unicode数据。剂量与检测源文件的编码来隐藏There is a string
来纠正unicode?如果不是,VS如何实现这一目标?
我不确定这个问题是否可以在SO中提出,如果不是,我应该问哪里?提前致谢。
什么 “不同编码” 你试试? AFAIK,没有字节顺序标记字符的文件默认为“ANSI”(本地化的编码...美国的Windows是cp1252,但它因地区而异),否则,[BOM](https://en.wikipedia.org/ wiki/Byte_order_mark)字符作为文件中的第一个代码点标识一个UTF编码。 –
@MarkTolonen我试过GB2312,UTF-8。那么vs会检测文件编码来隐藏unicode?是否有一些文件编码与不支持做这种转换? – zzy
您使用的是什么本地化版本的操作系统?对于中文,GB2312可能是ANSI编码。我期望其他本地化失败或至少损坏字符,因为Windows不会将任何编码指示添加到文件,并将采用当前的ANSI编码。但是,UTF编码文件由VS编写,以BOM字符开头,该字符具有不同的UTF编码的特定签名。 –