关于C/C++中的trigraph
来源:互联网 发布:ugui源码 编辑:程序博客网 时间:2024/06/14 16:53
先用简单的话讲一下什么是trigraph吧,这样不会一上来就是没人看得懂的话,trigraph是三字母词,又叫三连字。
由此推才出现了 trigraph .
下面举个例子来说明,下面是一个C++的简单程序:
#include <iostream>
using namespace std;
int main() {
}
在当时键盘没有那九个符号的时候,那些程序员们就这么写:
??=include <iostream>
using namespace std;
int main() ??<
??>
下面的程序就可以正确的打印出两个问号和一个等号:
#include <iostream>
using namespace std;
int main() {
}
实测中,
VC 8 不给任何提示将 trigraph 替换成对应字符,
GCC 4.0.3 则要求加上编译参数 -trigraphs 才会做相应转换。
虽然 GCC 的做法是不符合标准的,但是更加安全。
更详细的情况可以参考标准 2.3。
以下是从c语言参考课程里摘的一段话:
printf(“What??!\n");
打印的字符串What|,因为??!是一个三字母,它被|字符所替换。正确打印这个字符串的语句如下:
printf(What?\?!\n");
在这个printf语句中,在第二个问号之前加上一个反斜杠转义字符防止??!作为一个三字母的误解释。
- 关于C/C++中的trigraph
- 关于C/C++中的trigraph
- 关于C/C++中的trigraph
- 关于C/C++中的trigraph,类似"??!"
- C语言中的Trigraph sequences
- C语言中的三字母词(trigraph)
- c/c++ trigraph
- c/c++ digraph and trigraph
- C的三字母(Trigraph)语法。
- C语言三联序列(trigraph sequences)
- C语言中鲜为人知的“三字母词” (trigraph sequences)
- c语言三字母词(trigraph) && 整型提升
- 关于C中的 Union
- 关于C中的注释
- 关于c中的inline
- 关于C#中的IntPtr
- 关于c中的assert
- 关于c中的inline
- 自旋锁(spinlock) 解释得经典,透彻
- .体验百度安全管家—看它如何防吸费
- hdu 3247 Resource Archiver
- C/C++ sort函数的用法
- DWR如何获得返回对象
- 关于C/C++中的trigraph
- 嵌入式学习笔记(5)——51单片机之步进电机
- 2013年、2012、2011年中国软件业收入百强名录 看中国软件业这三年的变化
- Data source rejected establishment of connection message from server: "Too many connections"
- HDU 1505 动态规划(DP) City Game
- 关于HIVE的SELECT count(*) 优化
- linux信号机制之sigaction结构体浅析,signal 函数,信号捕捉
- 千万级并发实现的秘密:内核不是解决方案,而是问题所在!
- Object中 hashCode ---equals的完全理解