我们在使用 Visual Studio 2005 编译器时遇到了一个奇怪的问题。
在编译时,它替换了这个字符串常量
"... ,0x??)"
用这个:
"... ,0x]"
我们几乎没有通过尝试执行以下替换来学习:
??( -> [
??) -> ]
??< -> {
??> -> }
所以我想这应该是一个特性,而不是一个错误。
Visual Studio 2010 不这样做。
很遗憾,您无法使用 Google 搜索 ??(
。
所以问题是:
我们可以通过编译器开关来控制这种行为吗?
顺便说一句:这是什么原因?
最佳答案
那些是 C 有向字母和三字母:http://en.wikipedia.org/wiki/Digraphs_and_trigraphs
是的,您可以在 visual studio 中禁用它们:http://msdn.microsoft.com/en-us/library/ee462497.aspx
关于c++ - C编译器??)替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17041739/