for循环中i ++和++ i之间的区别

时间:2010-03-06 02:33:52

标签: c++ c for-loop

  

可能重复:
  Incrementing in C++ - When to use x++ or ++x?

之间有什么区别
for (int i = 0; i < MAX; i++)
{
//...do something
}

for (int i = 0; i < MAX; ++i)
{
//...do something
}

3 个答案:

答案 0 :(得分:5)

什么都没有。增量是一个单独的语句,因此无论是预先递增还是后递增都无关紧要。

答案 1 :(得分:2)

如果您关心复合语句中某个变量的值,则后增量和前增量运算符很重要。独立增量语句,作为for循环的第三个子句,不受您选择的前置或后置的影响。

int j = i++;int j = ++i;非常不同。您想要i的当前值还是想要增加i的值?在for循环示例中,只要递增就不在乎。

答案 2 :(得分:1)

唯一重要的是,即使你指定了i ++,优化器也不够聪明,无法意识到它可以执行++ i。 (这在现代编译器中不太可能。)

你可以识别真正的老程序员,因为他们总是使用++ i,除非他们需要使用i ++,因为曾经有一段时间编译器不那么聪明。