猿问

关于自增自减得具体问题,求解答。谢谢啦

int a=100,为什么输出的a++是100,不是说a++是先自增1在取值,所以结果不应该是101吗?

而++a是102,这不是先取值也就是100,然后在自增1,最后得到101吗?


蓝_雨
浏览 1133回答 1
1回答

MadMarical

你好。理解符号“++”的意义很重要,举例如下:++a,a自加1,返回a。a++,把a保存到临时变量,a自加1,返回临时变量。所以当int tmp = a++时,tmp = 原先a的临时变量也为100。当tmp = ++a时,tmp=a+1,为101。至于++a又变成了102,是因为你已经先执行了一次a++,此时a的值已经变成了101。你再执行一次++a,a先自加1自然就变成了102了。
随时随地看视频慕课网APP
我要回答