如果我有多个for循环我可以每次使用i还是我必须使用不同的变量?

时间:2016-03-18 14:25:20

标签: c loops for-loop

for (i = 0; i < MAX; i++) {

// printf blah blah; 

   //i = 18;

}



// code



for (i = 0; i < LENGTH; i++) {

//printf blah;

//i = height;

}

或者我必须使用j作为下一个循环和每个循环的不同变量

3 个答案:

答案 0 :(得分:5)

如果您的编译器支持C99,那么在循环语句中声明控制变量要好得多,只要该变量不在循环外使用。

例如

for ( int i = 0; i < MAX; i++) {
    //...
}

如果编译器不支持C99,那么您可以使用相同的变量i进行循环。希望它仅用作循环的控制变量。

答案 1 :(得分:3)

您可以在不同的循环中使用相同的变量(只要它保留在范围内)。

唯一需要注意的是,如果您错过了初始化,下次将使用上次保存的值。

答案 2 :(得分:3)

在你给出的例子中,有两个连续的循环,是的。

但要小心,不要使用嵌套循环。 你不该做的例子:

int i;

for (i = 0; i < 5; i++)
{
    for (i = 0; i < 3; i++)
    {
        printf("Hello\n");
    }
}

这不会只写出15个hellos,而是写入无穷大。