c有关问题

c问题在定义数组的时候要求数组长度是个常量,即是一个常数,那么能不能先定义一个变量,再给它负值呢?例如:i

c问题
在定义数组的时候要求数组长度是个常量,即是一个常数,那么能不能先定义一个变量,再给它负值呢?例如:
int n;
scanf("%d",&n);
int a[n];
这个数组是否合法?突然有点 糊涂了,老师没介绍这里?

[解决办法]
新标准(c99)是支持这样的写法的.现在大部分编译器都可以.

老标准不支持.