我正在用C语言编写一个循环,想要优化一下。虽然这里并不是非常关键,因为我只是在练习,但为了更进一步的知识,我想知道:
例如以下代码片段的循环:
int i = 0;
while (i < 10) {
printf("%d\n", i);
i++;
}
处理器在每次迭代时都会检查两个条件:
(i < 10)
和(i == 10)
吗?还是只检查(i < 10)
,如果为真,就继续执行?如果同时检查两个条件,那么不会造成额外的开销吗?
int i = 0;
while (i != 10) {
printf("%d\n", i);
i++;
}
想要更高效吗?
谢谢!