C语言-我不明白为什么
这有效:
#define x 5
int vett[x];
main () {}
这有效:
int vett[5];
main () {}
这有效:
main () {
int x=5;
int vett[x];
}
这有效:
int x=5;
main () {
int vett[x];
}
这不起作用:
int x=5;
int vett[x];
main () {}
答案 0 :(得分:3)
在所有其他示例中,在main外部时,数组的大小用常量(5)初始化。 在最后一个示例中,数组的初始化在main之外,因此它不运行代码,编译器不知道x的值是什么。