=(赋值运算)不同于 ==(比较运算符)
二者经常互相误写。&(按位与运算符) 和 | (按位或运算符)不同于 &&(逻辑与运算符) 和 ||(逻辑或运算符)
程序员易因为其他语言的影响而犯错。- 词法分析中的“贪心法”
单字符符号:如 / 、*、=
多字符符号:如 /*、==
编译器将程序分解成字符的方法。
符号的中间不能嵌有空白(空格符、制表符、换行符)。 - 整形常量
如果一个整形常量的第一个字符是数字0,那么该常量被视为八进制数。
例如:014 转换为十进制就是12
如果:018、019 则编译器报错。
有时候,在上下文中,为了格式对齐的需要,可能无意中将十进制数写成了八进制数。 - 字符与字符串
单引号 双引号 含义迥异
单引号引起的字符,实际上代表的是一个整数值,整数值对应于字符集中的序列值。
双引号引起的字符串,代表的是一个指向一个无名数组起始字符的指针,该数组被双引号之间的字符串以及一个额外的二进制为零的’\0’初始化。
第一章 词法陷阱
最新推荐文章于 2022-07-19 14:43:26 发布