我试图在 C 中处理一个二维数组。我尝试了两个嵌套的 for 循环,但似乎这两个循环是分开执行的。我希望外部循环的每个循环内部循环循环八次,导致外部循环数的八倍是循环总数。
作为一个简化的测试,我尝试了这个:
#include <stdio.h>
int main() {
int x = 0;
int y = 0;
for (; x < 7; x++, printf("(%d,%d)", x, y)) {
for (; y < 8; y++, printf("(%d,%d)", x, y)) { }
}
}
这导致了这些结果:
(0,1)(0,2)(0,3)(0,4)(0,5)(0,6)(0,7)(0,8)(1,8)(2,8) (3,8)(4,8)(5,8)(6,8)
有人可以向我解释为什么会发生这种情况吗?谢谢。