我们可以使用变量根据需要给出数组中元素的数量吗?
can we give the number of elements in an array as needed using a variable?
#include <stdio.h>
int main() {
int n;
scanf("%d", &n);
int L[n];
// ...
return 0;
}
我想问我是否可以根据需要使用变量给出数组中元素的数量。老师告诉我们不推荐这种方法,我不明白为什么。感谢您回答我的问题。
这个声明
int L[n];
是变长数组的声明。编译器有条件地支持可变长度数组。
因此不排除您会遇到不支持此类声明的编译器。
注意在这个声明中变量n
的值要大于0
.
由于这样的数组具有自动存储持续时间,因此其大小不应变化很大。否则你应该为数组动态分配内存。
#include <stdio.h>
int main() {
int n;
scanf("%d", &n);
int L[n];
// ...
return 0;
}
我想问我是否可以根据需要使用变量给出数组中元素的数量。老师告诉我们不推荐这种方法,我不明白为什么。感谢您回答我的问题。
这个声明
int L[n];
是变长数组的声明。编译器有条件地支持可变长度数组。
因此不排除您会遇到不支持此类声明的编译器。
注意在这个声明中变量n
的值要大于0
.
由于这样的数组具有自动存储持续时间,因此其大小不应变化很大。否则你应该为数组动态分配内存。