我在读过的书中偶尔会看到这个。但我没有找到任何解释。
for (;;)
{
// Do some stuff.
}
有点像“while(true)”吗?基本上是一个无限循环的轮询或什么?基本上你会做什么,直到你故意打破循环?
答案 0 :(得分:49)
有点像“while(true)”吗?
是。它永远循环。
另请注意Andrew Coleson的评论:
像C这样的语言没有内置的布尔基元,所以有些人喜欢(;;)而不是(1)
答案 1 :(得分:20)
是
在没有提供任何内容的情况下:
相当于while(true)。
答案 2 :(得分:17)
你是对的。这是无限循环的常见C#习语。
答案 3 :(得分:13)
正确。请注意,for循环的大括号包含三个部分:
使用for(;;)
,所有这些都是空的,所以没有做任何事情来初始化循环,没有条件让它保持运行(即它将无限期地运行)并且除了每次迭代都没有执行任何操作循环的内容。
答案 4 :(得分:12)
是的,这是一个无限循环。
答案 5 :(得分:11)
如果我没记错,它用于“while(true)”,它是否更像“for(;;)// ever”
答案 6 :(得分:10)
是的,这是一个无限循环,就像while(true)一样。
这是稍微偏好的惯例,可能是因为它更短。 根本没有效率差异。
答案 7 :(得分:9)
永远循环。
答案 8 :(得分:9)
看看for循环。
for ( initialization ; condition ; increment )
1)初始化 - 在此设置计数器变量
2)条件 - 保持循环直到计数器变量满足条件
3)增量 - 增加计数器
如果没有条件,循环将永远持续下去。如果它这样做,则不需要计数器。因此
for(;;)
答案 9 :(得分:8)
是的,这是一个无限循环。与while(true) { ... }
答案 10 :(得分:8)
无限循环 喜欢说
while (0<1)
答案 11 :(得分:6)
准确地说,分号之间没有任何东西的任何for循环将永远循环(直到通过其他方式终止),因为它没有定义的不变量。
答案 12 :(得分:4)
它没有结束条件,所以它会永远循环,直到找到休息时间,正如你已经猜到的那样。
答案 13 :(得分:4)
我可能还会补充说,看起来好像有两个笑脸在向你眨眼
for(;;)
也许这就是为什么有些人喜欢使用它。
答案 14 :(得分:4)
是的,它永远循环。 但你应该使用
的原因for(;;)
而不是
while(true)
就是那个
while(true)
将为您提供编译器警告“条件表达式常量”,而for循环则不会。至少你会在最高警告级别得到这样的编译器警告。
答案 15 :(得分:2)
是的!
答案 16 :(得分:1)
常用于嵌入式编程。
- 设置中断和定时器。 - 然后永远循环。
当发生将要处理的中断或定时器时。