for (i = 0; i < MAX; i++) {
// printf blah blah;
//i = 18;
}
// code
for (i = 0; i < LENGTH; i++) {
//printf blah;
//i = height;
}
或者我必须使用j作为下一个循环和每个循环的不同变量
答案 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,而是写入无穷大。