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

© 落叶heart 中级黑马   /  2016-4-12 23:42  /  512 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

b=a++和b=++a到底区别在哪里,不会啊

8 个回复

倒序浏览
表面上来看呢,b = a++是指a先赋值给b,再自增,因为a在++前面,b = ++a就是a先自增,再将自己赋值给b,因为++在前面,但是实际内存并不是这样算的,但是你按照我说的那样理解就可以了
回复 使用道具 举报
a++   是先赋值  再自增   ++a  先自增  再赋值
回复 使用道具 举报
区别在于先赋值后运算和先运算后赋值
还有,你的分已经水够了
回复 使用道具 举报
b = a++是指a先赋值给b,再自增,因为a在++前面,b = ++a就是a先自增,再将自己赋值给b,因为++在前面,但是实际内存并不是这样算的,例如:int i = 0;i=i++?无论循环多少次其中i==0.
回复 使用道具 举报
这就是 先赋值和先运算的问题   ++置前就先运算  置后就先赋值
回复 使用道具 举报
a++   是先赋值  再自增   ++a  先自增  再赋值
回复 使用道具 举报
b=a++;  b=++a  这么记, 等号右边离谁近就把谁的值赋给左边,离a近就是把a自增之前的值赋给b,离+近就是把加完之后的值赋给b,  --同理
回复 使用道具 举报
楼上正解
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马