C陷阱与缺陷--读书笔记1 词法“陷阱”

第一章
 
一、知识点
1、术语“符号”(token)指的是程序的一个基本组成单元。(P15)
 
2、除了字符串与字符常量,符号的中间不能嵌有空白(空格符、制表符、换行符)。例如:下面的表达式:
a---b与表达式a -- - b的含义相同,而与a - -- b的含义不同。(P19)
 
3、在C语言中,用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值。用双引号引起的字符串,代表的却是一个指向无名数组起始字符的指针,该数组被双引号之间的字符以及一个额外的二进制值为零的字符‘\0’初始化。(P21)
 
4、a+++++b唯一有意义的解释是a++ + ++b,但它也有可能被理解为 a++ ++ + b,这等价于 ((a++)++) + b,不过这个理解是不正确的,因为a++的结果不能作为左值,因此编译器不会接受a++作为后面的++运算符的操作数。(P136)
 
二、问题
1、计算并打印输出10000以内的所有Fibonacci数?
 
2、什么叫嵌套注释?

3、为什么 n-->0的含义是n-- >0,而不是n- ->0?
答:根据“大嘴法”规则,在编译器读入>之前,就已经将--作为单个符号了。
 
posted on 2012-05-01 09:17  谷堆旁边  阅读(324)  评论(0编辑  收藏  举报