A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© danniu1314 中级黑马   /  2015-8-12 12:10  /  626 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

++自增在前:比如a=2;b=++a;    结果就为a=3;b=3;
++自增在后:比如a=2;b=a++;    结果就为a=3;b=2;
计算机中的实际操作为:当执行b=a++;语句时,先把a放在一个临时内存空间中,然后将a自
加1,再将临时内存空间中的a赋值给b,因此b还是原来的a的值,

5 个回复

倒序浏览
b=++a是先把值赋给b,然后自己再自加1,,b=a++是自己先自加1然后再赋值给b,而最终就是无论怎样a都会加1
回复 使用道具 举报
肖天长 发表于 2015-8-12 14:23
b=++a是先把值赋给b,然后自己再自加1,,b=a++是自己先自加1然后再赋值给b,而最终就是无论怎样a都会加1 ...

哥们,你整反了吧。
回复 使用道具 举报
尴尬  我打a++和++a打错了
回复 使用道具 举报
然并卵!!
回复 使用道具 举报
a=a++的问题,++在后运算时会先把a的旧值放在副本中,通过副本做赋值运算,这是一种特殊的情况
回复 使用道具 举报 1 0
您需要登录后才可以回帖 登录 | 加入黑马