我的朋友向我展示了这一点,我不知道它是如何运作的以及它的名称。有人可以向我解释它是如何循环的吗?例如:
for(;;){
cout << "loop" << endl;
}
它将永远保持循环字符串。这种循环可以用于任何事情。这是如何工作的?
答案 0 :(得分:9)
根据语言规范,for
迭代结构中的空状态等同于true
条件。
6.5.3 for语句
1 for语句
for(for-init-statement condition opt ; expression opt )语句
相当于
{ for-init-statement while ( condition ) { statement expression ; } }
...
2 可以省略条件和表达式中的任何一个或两个。缺失条件使隐含的
while
子句等同于while(true)
。
所以,循环永远循环。这就是它的全部内容。
答案 1 :(得分:0)
它无限循环,因为没有初始化,条件和增量值在循环的参数中传递。典型的for循环采用如下参数:(&lt; initialization&gt ;;&lt; conditional&gt;;&lt; increment&gt;)
答案 2 :(得分:0)
这篇文章在我看来很好地解释了这一点。请参阅spex的答案: Why can the condition of a for-loop be left empty?
for循环的结构为for(clause; expression-2; expression-3){}
,当省略expression-2
时,它将替换为非零常量。这是循环的一部分,它决定了它是否应该保持循环。当非零常量计算为true时,它将变为无限循环。
答案 3 :(得分:0)
for循环基本上表示以下三件事(每个东西用for循环中的分号分隔&#34;标题?&#34;):
Wikipedia&#39; for
循环页面实际上有一个关于此的部分。
答案 4 :(得分:0)
正如许多人所指出的那样,它相当于while (1)
。
什么时候有用?无论您需要无限循环,例如:
在所有这些例子中,导致使用无限循环的共同因素是终止条件未知或终止条件复杂(例如游戏循环)