微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c – C编译器??)替换

我们遇到了Visual Studio 2005编译器的一个奇怪问题.
在编译时,它替换此字符串常量
"...,0x??)"

一个

"...,0x]"

我们几乎没有通过尝试执行以下替换来学习:

??(   ->   [
??)   ->   ]
??<   ->   {
??>   ->   }

所以我想这应该是一个功能,而不是一个bug.
Visual Studio 2010不会这样做.

太糟糕了,你不能用谷歌搜索??(.
所以问题是:

我们可以通过编译器开关控制这种行为吗?

顺便说一句:这是什么原因?

解决方法

那些是C有向图和三字母: http://en.wikipedia.org/wiki/Digraphs_and_trigraphs

是的,你可以在visual studio中禁用它们:http://msdn.microsoft.com/en-us/library/ee462497.aspx

原文地址:https://www.jb51.cc/c/110625.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐