c – 为常量语法或语义错误分配值?

前端之家收集整理的这篇文章主要介绍了c – 为常量语法或语义错误分配值?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
第二行代码是否被视为语法错误或C中的语义错误
int a = 7;
 3 = a;

在标准的C上下文无关语法中,我发现这个语句在语法上是有效的.

解决方法

它不是语法错误,因为语法可以从assignment-expression(5.17)派生到integer_literal

然后是语义错误,如5.17中所述:

All require a modifiable lvalue as their left operand and return an
lvalue referring to the left operand.

左值是一个语义概念,而不是语法概念.

猜你在找的C&C++相关文章