在c中放置无限条件

Pay*_*tel 5 c infinite-loop

我正在运行一个带有无限for循环的C程序:

for(;;)
{
    //Statement
}
Run Code Online (Sandbox Code Playgroud)

为什么它运行无限次数,即使我们没有指定循环的初始化,条件和增量?

"空白"值的含义是什么?

Pra*_*tla 7

这是for循环的基本语法.

for(clause-1; expression-2; expression-3) statement;
Run Code Online (Sandbox Code Playgroud)

根据K&R 的C编程语言,可以省略第-1条和第3条.省略的表达式-2被非零常量替换.而且我们知道,任何非零值在C中都表示"真实".

PS:虽然K&R书已经过时了,但它被许多人认为是C的圣经.


Ker*_* SB 5

循环仅在条件为时才会中断false.由于没有条件,没有任何东西可以是假的,并且循环不会中断.

  • 相关标准:"*可以省略子句-1和表达式-3.省略的表达式-2被非零常量替换.*". (7认同)