欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C陷阱与缺陷第一章

程序员文章站 2023-02-08 08:13:45
c陷阱与缺陷第一章。 1. =不同于== =为赋值运算,==为比较; 2.&和| 不同于 &&和|| 按位运算符&、|, 逻辑运算符&&、||; 3....

c陷阱与缺陷第一章。

1. =不同于==

=为赋值运算,==为比较;

2.&和| 不同于 &&和||

按位运算符&、|, 逻辑运算符&&、||;

3.词法分析中的“贪心法”

c语言的某些符号,例如/、*、=,只有一个字符长,还有其他符号,例如/*、==,有多个字符。编译器1将程序分解成符号的方法是,从左到右一个字符一个字符地读入,如果判断已经读入的两个字符组成的字符串是否可能是一个符号的组成部分;如果可能,继续读入下一个字符,直到读入的字符组成的字符串已不再可能组成一个有意义的符号。这个处理策略有时被称为“贪心法“。

符号中间不能嵌入空格,例如 y = x/*p 和 y = x / *p 不一样,第一个为赋值语句,/*p为注释;第二个 p为指针,指向除数;

4.字符与字符串

用单引号‘’引起的一个字符实际上代表一个整数,整数值对应该字符在字符集(比如ascii字符集)中的序列值。

用双引号引起的字符串” “代表的是一个指向 数组起始字符 的指针,该数组被双引号之间的字符以及一个字符‘\0’初始化。