Chinaunix首页 | 论坛 | 博客
  • 博客访问: 117289
  • 博文数量: 23
  • 博客积分: 495
  • 博客等级: 下士
  • 技术积分: 252
  • 用 户 组: 普通用户
  • 注册时间: 2011-08-05 20:44
文章分类
文章存档

2011年(23)

分类: C/C++

2011-08-09 22:45:14

1. 知道C语言中存在三字母词(trigraph)这回事,所谓三字母词就是几个字符的序列,合起来表示另一个字符。三字母词使C环境可以在某些缺少一些必需的字符集上实现。这里列出一些三字母词以及它们所代表的字符。
??( [ ??< { ??= #
??) ] ??> } ??/ \
??! | ??' ^ ??- ~
注意在使用gcc编译这类C源文件时,须要添加编译选项-trigraphs

2. 不常用的转义序列
\? 在书写连续多个问号时使用,防止它们被解释为三字母词。
\" 用于表示一个字符串常量内部的双引号。
\' 用于表示字符常量'。
\\ 用于表示一个反斜杠,防止它被解释为一个转义序列符。

3. 如果/*或*/出现在字符串字面值内部,就不再起注释定界符的作用。所有的注释都会被预处理器拿掉,取而代之的是一个空格。

4. C语言是一种自由形式的语言,唯一的规则就是相邻的标记之间必须出现一至多个空白字符(或注释),不然它们可能被解释为单个标记。

5. 虽然一个源文件可以包含超过一个的函数,但每个函数都必须完整地出现于同一个源文件中。
阅读(675) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~