如何" i ++"效率高于" i = i + 1"?

时间:2014-08-29 05:00:19

标签: c

这两种陈述在绩效方面是否有任何区别?

i++;
i = i + 1;

2 个答案:

答案 0 :(得分:6)

取决于优化。在大多数处理器上,i++可以表示为单个机器语言指令。另一方面,i = i + 1最多可以表示四个:加载i,加载1,添加,存储到i;虽然,即使是一个中等智能编译器也应该能够识别它可以将它重写为前者。

答案 1 :(得分:0)

不,没有区别。编译器会将这些编译成同一个程序集