问答详情
源自:3-3 自增与自减运算符

运算符类计算题

#include<stdio.h>

int main()

{

int A, a;

    a = 12;

a -= a *= a + 2;

printf("%d\n", a -= a *= a + 2);

return 0;

}

为什么结果是0呢,它的具体运算过程是什么,求教!!!

提问者:爱喝可乐的抹茶 2021-04-13 17:52

个回答

  • qq_慕虎9294303
    2021-04-13 19:54:25
    已采纳

    首先你要的是a的值,printf("%d\n", a -= a *= a + 2);相当于运行了两遍a -= a *= a + 2;

    另外a -= a使得a=0,a -= a *= a + 2里a+2是一起的0乘任何数都是0