c语言中a-=a是什么意思

c语言中a-=a是什么意思

第1个回答  2020-03-25
a-=a的意思为a=a-a,先用a减a,然后再将得到的结果赋值给a。-=实际上是一种缩写形式,使得对变量的改变更为简洁。
运算时,可以将其写成熟悉的形式,从右向左依次计算,注意在每次计算时,变量的值会发生改变,
如不注意,就会导致错误的情况发生。
扩展资料:
复合赋值运算符有下列这些:
符号
功能
+=
加法赋值
-=
减法赋值
*=
乘法赋值
/=
除法赋值
%=
模运算赋值
<<=
左移赋值
>>=
右移赋值
&=
位逻辑与赋值
|=
位逻辑或赋值
^=
位逻辑异或赋值
参考资料来源:百度百科-复合赋值运算符
第2个回答  2020-01-24
从右往左计算,先算a*=a,意思是a=a*a,这样,a的值被改写,然后计算a-=a,把重新被改写的值代入,a=a-a,a值又被改写,在把改写后的值赋给a,结果为0
第3个回答  2020-01-13
第4个回答  2019-09-23
a+或a-中变量a和后面的运算符号是两回事,如果运算符号后面不写其他表达式,这是个语法错误的写法。a是变量名+或-是运算符号
第5个回答  2019-03-04
从右往左算
初始值a=12
第一步:a+=a-=[a*=a] ,先算括号里的 ——> a*=a 即 a=a*a=12*12=144
(经过第一步后,原本初始值a=12已经变成了a=144)
第二步:a+=[a-=144] ,括号里的a-=144,即 a=a-144=144-144=0
(经过第二步后,a的值变成了0)
第三步:a+=0 ,即a=a+0=0+0=0
最后答案是:0