for循环中i ++和++ i之间的区别
可能重复:
C ++中的增量 – 何时使用x ++或++ x?
有什么区别
for (int i = 0; i < MAX; i++) { //...do something }
和
for (int i = 0; i < MAX; ++i) { //...do something }
?
什么都没有。 增量是一个单独的语句,因此无论是预先递增还是后递增都无关紧要。
如果您关心复合语句中某个变量的值,则后增量和前增量运算符很重要。 独立增量语句,作为for循环的第三个子句,不受您选择的pre或post的影响。
int j = i++;
和int j = ++i;
非常不同。 你想要i
的当前值还是想要增加i
值? 在for循环示例中,只要递增就不关心。
只有当优化器不够聪明才能意识到即使你指定了i ++它也可以执行++ i,这才有意义。 (现代编译器中不太可能。)
你可以识别真正的老程序员,因为他们总是使用++ i,除非他们需要使用i ++,因为曾经有一段时间编译器不那么聪明。