j = 0;j = j++;问最后j的值?
java吧
全部回复
仅看楼主
level 6
[滑稽]C++和JAVA有一样的结果0,求问执行顺序
2018年09月07日 14点09分 1
level 10
正无穷大
2018年09月07日 14点09分 2
level 12
最近纠结运算符的和问gui的越来越多了好像[笑眼]
2018年09月07日 15点09分 3
一本蛇精病的书上的题,醉了
2018年09月07日 16点09分
level 6
经过汇编的结果:
0放进e
bp
-4
然后丢进eax
自增eax然后放进edx(这里是1)
edx放回栈(现在j是1)
eax放回栈(j又变成0了)
所以这个++是执行了的,但是被赋值顶掉了
2018年09月07日 16点09分 5
不对这里是JAVA吧[滑稽]
2018年09月07日 16点09分
level 1
在C++中这是一个典型的未定义行为,研究其结果无意义。
在JAVA中,最终执行的是j=(j自增前的拷贝值0),所以j为0。
2018年09月07日 17点09分 6
1