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

© strongmanzxh 中级黑马   /  2016-4-9 16:17  /  464 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

                int a = 3;
                int b;
                b = a++;
                b = ++a;
这两种情况应该都是a=3,b=4呀?怎么运行结果却不是呢!!

3 个回复

倒序浏览
第一个b=3,因为a是先把3赋值给b后再加1,所以第一个b是3. 第二个b是5,因为上一个a++后,把上一个b赋值3后,自身加1,所以后面a是4.然后++a,就是4+1后再赋值给b.所以后面b=5.如果你分开写上面两个赋值就是一个3,一个4
回复 使用道具 举报
第一个b=3,因为a是先把3赋值给b后再加1,所以第一个b是3. 第二个b是5,因为上一个a++后,把上一个b赋值3后,自身加1,所以后面a是4.然后++a,就是4+1后再赋值给b.所以后面b=5.如果你分开写上面两个赋值就是一个3,一个4
回复 使用道具 举报
顺序不一样,第一个先++后=,第二个先=后++
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马