【发布时间】:2023-03-28 07:46:01
【问题描述】:
下面的代码是我写来测试我对在C中使用for-loop的理解,特别是在for-loop中使用赋值语句。但在这里我得到了意想不到的输出。为什么不将 0 分配给 array 的前 10 个元素?
如果我将数组声明为array[10] 而不是array[11],为什么它根本不打印array?
谁能解释一下?
#include <stdio.h>
int main() {
int i, array[11]; //array[10]
for (i = 0; ((i < 10) || (array[i] = 0)); ++i);
for (i = 0; ((i < 10) && (printf("%d\n", array[i]))); ++i);
return 0;
}
【问题讨论】:
标签: c++ c arrays for-loop printf