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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 海贼王019 中级黑马   /  2015-4-6 23:34  /  345 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

再次看到这个程序突然想到了++运算符比赋值高,执行了++之后i赋值给a应该是2才对 为何还是1

2015-04-06_233319.png (6.93 KB, 下载次数: 0)

2015-04-06_233319.png

6 个回复

倒序浏览
a=i++;这句代码是先把i的值赋值给a再自增1,这个需要你搞清楚前置自增1和后置自增一的区别,而且你定义的这个i是常量,数值是不会变化的,也没有循环,a的值永远都是1,这跟普通的赋值是一样的,不会出现+1的运算。
回复 使用道具 举报
a++是先赋值再增的,++a就是先自增再赋值的,其实不单是赋值,其他运算也一样,a++是先执行其他运算后再自加一,++a就是先自加一再其他参与运算
回复 使用道具 举报 1 0
自增和赋值的先后问题。
回复 使用道具 举报
温暖的小白 发表于 2015-4-6 23:43
a=i++;这句代码是先把i的值赋值给a再自增1,这个需要你搞清楚前置自增1和后置自增一的区别,而且你定义的这 ...

啊, 我确实问的++问题,解决了 ,谢谢
回复 使用道具 举报
后自增是先赋值再自增的,前自增是先自增再赋值的
回复 使用道具 举报
Teresa 中级黑马 2015-4-10 23:47:09
7#
a=++i 结果就是2了    先自增 后运算
a=i++结果是1   先把i的值给了a  然后i再自增  你如果输出 a 和i  结果是1 和2
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马