数组的大小可以动态定义??
之前了解到数组的大小是不能够动态定义的,只能用new或者malloc来定义一个大小未知的数组。
可以各位大虾看看,下面我的这个代码的数组大小怎么可以动态定义呢?为什么没有出错呢?
#include <stdio.h>
void setNum(int *p,int a);
int main()
{
int dim;
int number;
scanf("%d",&number);
setNum(&dim,number);
int num[dim];
printf("%d",sizeof(num)/sizeof(num[0]));
while(1);
}
void setNum(int *p,int a)
{
*p = a;
}