#include<stdio.h>
int main()
{
while(printf("Hello"))
return 0;
}
Run Code Online (Sandbox Code Playgroud)
仅Hello作为输出生产
#include<stdio.h>
int main()
{
while(printf("Hello"));
return 0;
}
Run Code Online (Sandbox Code Playgroud)
第二个代码打印Hello无限次。
#include<stdio.h>
int main()
{
while(printf("Hello"))
{}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
第三个代码也打印Hello无限次。
PSk*_*cik 10
while结束后发表声明)。
iteration-statement:
while ( expression ) statement
....
Run Code Online (Sandbox Code Playgroud)
在
while(printf("Hello"))
return 0;
Run Code Online (Sandbox Code Playgroud)
该陈述(基本上while是 的论点)是return 0;(6.8.6)
在
while(printf("Hello"));
Run Code Online (Sandbox Code Playgroud)
该语句是;(空(空)/表达式语句(6.8.3))。
在
while(printf("Hello")){}
Run Code Online (Sandbox Code Playgroud)
它是一个空的复合语句 ( {}, 6.8.2 ),在语义上等同于;.
你的代码片段是误导性空白的例子——空白使人们对事物的理解与编译器不同。
较少误导性的渲染将是:
while(printf("Hello"))
return 0;
Run Code Online (Sandbox Code Playgroud)
,
while(printf("Hello"))
; //or perhaps a {} instead of the null statement
Run Code Online (Sandbox Code Playgroud)
和
while(printf("Hello"))
{}
Run Code Online (Sandbox Code Playgroud)