我完全了解这些优先级和关联性,但我无法正确地为此表达式排序错误。
c=b|i+++++j;
答案 0 :(得分:1)
“maximal munch”或“longongest match”是在创建某个构造时应该消耗尽可能多的可用输入的原则。
每个编译器都有一个tokenizer,它是一个将源文件解析为不同标记(关键字,运算符,标识符等)的组件。其中一个tokenizer的规则称为“maximal munch”,它表示tokenizer应该继续读取源文件中的字符,直到再添加一个字符导致当前令牌停止有意义。
++
(后缀)不会返回lvalue
,但要求其操作数为lvalue
。