C语言x+=什么意思

 我来答
Negamax
2015-05-21 · TA获得超过2723个赞
知道小有建树答主
回答量:656
采纳率:100%
帮助的人:293万
展开全部
一句话描述:
a+=1-->等价于 a=a+1; 这是因为编译器再对代码进行语义分析的时候会把 a=a+1 翻译成 a+=1.我们写代码这么写的话就可以适当提高效率。 有关为什么会翻译成这个。楼主可参考《编译原理》相关知识,重点是看看 前缀、中缀、后缀表达式相关知识点。
一变班爱麻啊堡0J
高粉答主

2020-01-13 · 醉心答题,欢迎关注
知道答主
回答量:11.4万
采纳率:2%
帮助的人:5768万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
刀无极啊
2015-05-21 · TA获得超过3769个赞
知道大有可为答主
回答量:2960
采纳率:85%
帮助的人:956万
展开全部
x+=a等价于x=x+a
赋值运算符当中,有一类C/C++独有的复合赋值运算符。它们实际上是一种缩写形式,使得对变量的改变更为简洁。
Total=Total+3;
它的意思是本身的值加3,然后在赋值给本身。为了简化,上面的代码也可以写成:
Total+=3;
同样,x*=y+7 等价于x=x*(y+7) r%=p 等价于r=r%p
复合赋值运算符有下列这些:
符号 功能
+= 加法赋值
-= 减法赋值
*= 乘法赋值
/= 除法赋值
%= 模运算赋值
<<= 左移赋值
>>= 右移赋值
&= 位逻辑与赋值
|= 位逻辑或赋值
^= 位逻辑异或赋值
那么看了上面的复合赋值运算符,有人就会问,到底Total=Total+3;与Total+=3;有没有区别?答案是有的,对于A=A+1,表达式A被计算了两次,对于复合运算符A+=1,表达式A仅计算了一次。一般的来说,这种区别对于程序的运行没有多大影响,但是当表达式作为函数的返回值时,函数就被调用了两次(以后再说明),而且如果使用普通的赋值
运算符,也会加大程序的开销,使效率降低。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式