a=3,b=3;
b=a++;
为什么b=4?
b不会等于4,b等于3。等于4的是a
你首先要明白a++和++a的区别,前者是先用a,然后把a自加1;后者是先把a自加1,然后再使用
b=a++;会先把a的值赋值给b,然后a自加1;然后a又是值类型,所以b=3
b = 4
a = 3
b = a++,先将a的值赋给b,a自己再自增
b = ++a, 先将a自增,再将a的值赋给b
运行完b为3,a为4啊,源代码上下文看看
这是++在前还是在后的问题了,如果是a++那么先赋值在运算,如果这个时候直接输出b,那么b不可能是4,虽然不知道你后面是怎么处理的,但是你直接输出绝不会是4