若a=3,求a+=a*=a;不是18吗

若a=3,求a+=a*=a;不是18吗

先计算后面的a=a*a=3*3=9;然后a+=a不是9+9=18吗,求大神解答

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
BAYNAX 2019-02-05 13:52:52

不是的 这里a的值始终是3 没有被重新赋值

  • 提问者 慕数据3488695 #1
    我想请教一下具体在内存中是怎么一个过程比如说 int a =3,就是说在栈中创建一个变量a,然后把在常量区的3的地址给 a,然后下面的a+=a*=a要如何在内存中分析呢
    2019-02-05 15:43:58
  • 慕粉0907203 回复 提问者 慕数据3488695 #2
    计算a*a,得到9,放到常量区,然后计算a+=9,我觉得这个题目主要关注计算过程吧,你说的存储主要就是计算赋值,跟普通的计算过程没什么大的区别
    2019-02-11 10:10:47
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师