我在现有的代码中发现了一个空的for语句,我想知道它的作用是什么,它是否"安全".这只是感觉不对.
for(;;)
{
//some if statements and a case statement
}
Run Code Online (Sandbox Code Playgroud)
谢谢!
Set*_*eth 17
这是创建无限循环的一种方法.它是一个常规for循环,但具有空的初始化,条件和增量表达式.因为条件表达式是无操作,所以循环永远不会退出.它是完全"安全的",假设它有一个终止条件(一个break或return声明[甚至是一个goto,我猜])某处.
就个人而言,我更喜欢用whiles 写无限循环:
while (true)
{
//some statements and a case statement
}
Run Code Online (Sandbox Code Playgroud)
(因为for是迭代而且while是重复).
但是,在阅读了这个问题后(由@jailf链接),我现在更喜欢while (42) { ... }.
它等同于具有无限循环:
while (true) {
}
Run Code Online (Sandbox Code Playgroud)
它是安全的.您需要提供外部退出机制.IE,在for循环内中断.
| 归档时间: |
|
| 查看次数: |
750 次 |
| 最近记录: |