<分区>
Possible Duplicate:
Post Increment and Pre Increment concept?
谁能明确解释前缀增量与后缀增量有何不同?
也有人可以解释为什么输出 6 吗?
i=1;
cout << ++i + ++i;
还有为什么这会给出 4
i = 1;
cout << ++i + i++;
以及为什么这会产生 true
i = 0;
cout << (i++ || i++)
<分区>
Possible Duplicate:
Post Increment and Pre Increment concept?
谁能明确解释前缀增量与后缀增量有何不同?
也有人可以解释为什么输出 6 吗?
i=1;
cout << ++i + ++i;
还有为什么这会给出 4
i = 1;
cout << ++i + i++;
以及为什么这会产生 true
i = 0;
cout << (i++ || i++)
最佳答案
1) 很明显,“++i”先递增变量,然后“i++”递增。
2) 不太明显的是,将中缀递增/递减与对同一变量的其他操作混合在一起的复杂表达式可能会引入未定义的行为:
我同意:线程 Post-increment and Pre-increment concept?解决了这个问题。
关于c++ - 前缀/后缀增量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12862733/