C++ 中运算符+=与=+的区别

如题。*=与=*之类的区别能说明得详细点吗那如果a++跟++a呢?
2024-10-30 10:26:47
推荐回答(5个)
回答1:

+= 只是一种写法而已,没有什么特别的。

int a, b;

a += b; // <=> a = a + b;

除非 a = a + b, c, c++, java, c# 都没有 a =+ b 这种语法。

=============

你可以把 a++ 和 ++a 分别看成一个函数。

a++ <=> b = a; a = a + 1; return b;
++a <=> a = a + 1; return a;

回答2:

好像没有=+的说法吧,只见过+=的

回答3:

a+=b <=> a = a + b 类似的还有 -=,*=,/=,%=
a=+b是将b的值赋给a
a=-b是将-b的值赋给a
a=*b和a=/b就不存在了
a++和++a做为单独的表达式时,效果一样,但作为子表达式时,会对其他变量产生不同的影响,如:
int a=0,b=0,i=0;
a=++i;//a为1,i为1
b=i++;;//b为1,i为2
这是因为执行行第二条语句,++i是前置式,先自增,然后再把i的值赋给a;执行第三条语句,i++是后置式,先读取i的值赋给b,然后再自增
希望对你有用!不明白可以给我留言!

回答4:

给你举个例子 x+=5表示将x+5后赋值给x;而x=+5则是x的值为正实数5

回答5:

=+与 = 是一样的效果