【发布时间】:2016-01-31 10:59:27
【问题描述】:
我是 C++ 新手,正在研究递增和递减运算符。 所以我尝试了这个例子:
int x = 4;
cout << ++x << " " << x++ << " " << x++ << endl << endl;
cout << x << endl;
它在 C++ .NET 和 QtCreator 以及 5 个在线 C++ 编译器上返回此奇怪输出:
7 5 4
7
奇怪的是我期待这样的事情:
5 5 6
7
你能解释一下发生了什么吗?
【问题讨论】:
-
当您将多个
++放在同一行且没有序列点时,编译器不需要按任何特定顺序执行操作。 -
@MarkRansom ||你能解释一下吗
-
谷歌一下。这个问题几乎每周都会被问到。
标签: c++ increment cout decrement