for(;;)
{
for(; ; )
}
格式一般是这样的,一般应用于数组调用,比如
int i,j;
a[10][5]={0};
for(i=0;i<10;i++)
{
for(j=0;j<5;j++)
{
printf("%d",a[i][j]);
}
}
for(i=0;i<10;i++)
for(j=0;j<10;j++)
{
s=i+j;
}
这样用。先执行i=0然后执行for(j=0;j<10;j++),再执行i=1,然后执行for(j=0;j<10;j++)。。。。
for循环的形式为:
for(initialization; test; increment)
{statements}
这些参数的意思是:
initialization:一个表达式。该表达式只在执行循环前被执行一次。
test:一个 Boolean表达式。如果 test 是 true,则 statement 被执行。如果 test 是 false,则循环结束。
increment:一个表达式。在每次经过循环的最后执行该递增表达式。
statements:test 是 true 时,要执行的一个或多个语句。可以是复合语句。
这些参数都可以省略,但是必须存在一个分号!
如for(i=0;;i++)
for(;i<10;i++)
for(;i<10;)
for(i=0;;)
都可以成立,但是如果少了initialization,则应在for循环之前,将循环条件用到的值初始化,
如果省略test,则应在循环体内设置判断语句进行break跳出循环;如果省略increment
则应在循环体内改变循环条件用到的值(这里是i)!
不管如何,for(;;)里面始终有两个";"
另外for循环用到的花括号{已经起到了分号;的作用;故for循环后不需要加分号;
如果加了分号,等于加了一句空语句!
希望能帮到你,亲!
最后一个没有“;”你再说的明白一点。