这个问题已经在这里有了答案:
已关闭8年。
为什么一元运算符在c++和java中给出不同的结果?
看一下这个:
int i = 1;
i = i++ + ++i;
print i (with cout or println)
在中Java :打印 4
在中c++ :打印 5
为什么呢
最佳答案
在C++中,诸如i = i++ + ++i;
之类的语句的行为实际上是 undefined ,因此行为不同的事实并不令人惊讶。
实际上,如果两个不同的C++编译器对C++语句i = i++ + ++i;
产生不同的行为,也就不足为奇了。
相关问题: