【发布时间】:2021-03-17 07:07:07
【问题描述】:
我有一个我无法理解的问题。
由于空格删除是C 编译过程的一部分,那么 C 编译器如何区分以下内容:
案例1:
int x = 2,y=4;
int z = x+++y;
printf("%d", z);//gives 6
案例 2:
int x = 2,y=4;
int z = x+ ++y;
printf("%d", z);//gives 7
注意我在x+ 之后添加的空格,使++ 坚持y 而不是x,但是如果删除空格会发生这种情况?
【问题讨论】:
-
但是你的问题有点误导,好像你对优先级和关联性有混淆,而不是在表达式评估中如何区分空格
标签: c compilation operator-keyword operator-precedence