结论:
for(;;) 比 while(true) 好
编译前 | 编译后 |
---|---|
while (1); | mov eax,1 |
test eax,eax | |
je foo+23h | |
jmp foo+18h | |
编译前 | 编译后 |
for (;;); | jmp foo+23h |
对比之下,for (;;)指令少,不占用寄存器,而且没有判断跳转,比while (1)好。
也就是说两者在在宏观上完全一样的功能,
但是底层完全不一样,
for相对于来说更加简洁明了。
结论:
for(;;) 比 while(true) 好
编译前 | 编译后 |
---|---|
while (1); | mov eax,1 |
test eax,eax | |
je foo+23h | |
jmp foo+18h | |
编译前 | 编译后 |
for (;;); | jmp foo+23h |
对比之下,for (;;)指令少,不占用寄存器,而且没有判断跳转,比while (1)好。
也就是说两者在在宏观上完全一样的功能,
但是底层完全不一样,
for相对于来说更加简洁明了。