词法分析中的“贪心法”
C语言的某些符号:
//单字符符号:/、*、和=等。
//多字符符号:==、标识符、
本意:用x除以p所指向的值,把所得的商再赋给y:
y = x
//实际意义:出现为止。
也就是说,该语句直接将x的值赋给y,根本不会顾忌后面出现的p。
y = x / *p
或者更加清楚一点,写作:
y = x/(*p)
准二义性(near-ambiguity)问题:
老版本的C语言允许使用=+来代表现在+=的含义。
这种老版本的C编译器会将
a=-1理解为a =- 1,亦即a = a - 1;
而不是程序员的原意a = -1。



