为什么(;;)而不是while(1)?

时间:2010-09-05 03:23:36

标签: c

  

可能重复:
  Is “for(;;)” faster than “while (TRUE)”? If not, why do people use it?

为什么要使用丑陋的for(;;)语法而不是更好看的while(true)循环?

2 个答案:

答案 0 :(得分:4)

for(;;)优于while(1)。 使用while(1),因为它更容易理解(imho)。我以前从未见过使用过for(;;),对于那些查看您的代码的人来说,这可能会让您感到困惑,并且可能会想到您刚才提出的问题。

编辑:这是一个链接:while (1) Vs. for (;;) Is there a speed difference?

它基本上说它们都生成相同的代码。在汇编中,它是jmp ...

答案 1 :(得分:2)

少打字?它更短。在QWERTY键盘上,键入for在左手和右手之间交替显示,while有三个用右手键入的连续字母,这使得输入可能更慢。