Возможные Дублировать:
Could anyone explain these undefined behaviors (i = i++ + ++i , i = i++, etc…)
Is there any difference between the Java and C++ operators?унарные операторы в Java против C++
Почему унарный операторы дают разный результат в C++ и Java?
Проверьте это:
int i = 1;
i = i++ + ++i;
print i (with cout or println)
В ява: печатает
В C++: печатает
Почему?
Это печатает '4' для меня на Java. – Keppil
Это «неопределенное поведение». Есть много, много сообщений. Быстрый поиск предлагает http://stackoverflow.com/questions/4176328/undefined-behavior-and-sequence-points и http://stackoverflow.com/questions/4638364/undefined-behavior-and-sequence-points-reloaded to начните с. Также обратите внимание, что я получаю '5' с g ++. – BoBTFish
@ Daniel Fischer: jdk1.6.0_31 – Keppil