c语言编译器是如何判断语句是否出错的?

如题所述

赋值语句,从右到左依次运行:

那么:

int a=9;

a+=a-=a+a;

相当于:

a-=a+a;

a+=a;

然后相当于:

a=a-(a+a);

a=a+a;

由于a初始化为9:

a=a-(a+a)=-a=-9;

a=a+a=-9+(-9)==-18;

所以最后结果就是-18

 

温馨提示:答案为网友推荐,仅供参考
相似回答