++a 和 a++还是没搞懂什么情况

++a 和 a++还是没搞懂什么情况

a = 10

b = 20

x = ++a+b    //这样x= 31

x=  a+++b   //这样x=30 

那a++等于是没有任何作用咯?

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

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

2回答
_麦当 2019-09-23 09:38:46

并不是没有作用的,只要是递增,不管是a++还是++a,a本身已经增加了1,但是a++是先返回x后再给自身递增,而++a是先递增后再返回x的值。

_麦当 2019-09-23 09:29:42
第一种情况,先返回后递增

var a = 1;

var b = a++;  // 会导致此时 b为1,a为2

第二种情况,先递增后返回

var a = 1;

var b = ++a;  // 会导致此时 a为2,b为2

无论是第一种还是第二种情况都会使变量a递增加1,递增就体现在这里了。

只是对变量b赋值时,a++会先将a原值赋值给b后再自己递增加1,所以b为1、a为2;而++a会先将a自己递增加一后再赋值给b,所以a为2,、b为2。

递减a--、--a原理一样。


问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

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