“cout”链接执行增量和减量时产生意想不到的结果
问题描述:
以下程序仅包含增量和减量操作。正如我的预测,程序应该打印“0 1 1 1”,但它打印的是“1 0 2 0”,但为什么?“cout”链接执行增量和减量时产生意想不到的结果
#include<iostream>
using namespace std;
int main(void)
{
int i=0;
cout<<i++<<" "<<i++<<" "<<--i<<" "<<i++;//this will print "1 0 2 0"
}
...但如果我不这么做链的输出指令就像它工作正常,
cout<<i++<<endl;
cout<<i++<<endl;
cout<<--i<<endl;
cout<<i++<<endl;
即使他们应该以同样的方式工作,但他们生产的不同的结果。但为什么?
enter code here
答
后,当你使用我++中的线运行后,当您运行++我把它添加的行exectued之前,所以,当你没有 - 我从我减去前行跑了预增我++的电话。
试着让它们都是i ++和i--或者--i和++ i所以结果不会根据它们是否在同一行上而不同