总结:在C语言中for(;;)编译后的代码比while(true)的简洁,在java中两者一样
在C中,while(true)在编译后:
mov eax,1
test eax,eax
je foo+23h
jmp foo+18h
for(;;)在编译后:
mp foo+23h
这里的区别就非常明显了,for(;;)在c语言中指令较少,也能够节省内存,没有判断跳转,是比while(true)更好的无限循环。
在java中,没有任何区别,因为都被优化成了goto。