int a=3; cout<<(a + =a - =a*a)<endl; 结果是-12 请问具体的运算过程是什么

 我来答
若茶未凉
2012-06-30 · TA获得超过105个赞
知道答主
回答量:35
采纳率:0%
帮助的人:32.2万
展开全部
一、 int a =3 ; 结果 a=3
因为 = 为赋值运算符 优先级 较低 而 语句
a + =a - =a*a 的原型 应该是 a=a+a=a-a*a
所以 最开始 计算 a=a-a*a=3-3*3=3-9=-6
此时 因为执行了赋值运算 = 所以 a的值变成了 -6 然后执行a=a+a=-6+(-6)=-12
最后 结果应该是 -12
xxdy1010
2012-06-30
知道答主
回答量:25
采纳率:0%
帮助的人:9.3万
展开全部
从右到左,先a*a等于9,再a=a-9=-6,最后a=a+a=-12
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式