词法问题
1:=为赋值符号
==为比较符号
例如:x=y是将y的值赋给x
x==y则是判断x和y是否相等(这个问题我刚学编程甚至大学毕业的时候还是犯错)
2:&和|是按位运算符
&&和||是逻辑运算符
3:词法分析中的贪心法
如果输入流截止至某个字符之前都已经被分解为一个个符号,那么下一个符号将包括从该字符之后可能组成一个符号的最长字符串。
例如:y=x/*p 此语句并不能计算x除以p指向的数,而是将x的值赋给y,/*表示后面的则是注释
4:整型常量
整型常量第一个字符是数字0,则该常量将被视为八进制数。
10:十进制表示仍是10
010:十进制表示则是8
5:字符和字符串
单引号引起的一个字符实际上代表一个整数
双引号引起的字符串代表的是一个指向无名数组起始字符的指针
’a'和“a”含义并不一样
本文深入探讨了编程中常见的符号误用,如赋值符号=与比较符号==的区别,以及逻辑运算符和按位运算符的正确使用。同时,文章详细解释了整型常量的不同进制表示,字符与字符串的底层存储方式,为初学者提供了一个清晰的编程基础概念框架。

被折叠的 条评论
为什么被折叠?



