C语言:数组 如果数组长度是由输入数据的个数确定的应该怎么编?
1个回答
展开全部
很简单,用malloc动态分配,用完后用free释放。
//#include<stdlib.h>
int n;
scanf("%d",&n);
int *a=(int*)malloc(sizeof(int)*n); //分配相应字节数的空间并将首地址返回给指针a
//此时a就可以当做一个有n个元素的数组使用了
...
free(a); //使用完后别忘了释放否则会造成内存泄漏
更多追问追答
追问
嗯……我还没有学到指针什么的,刚刚学数组,有没有其它的方法?
追答
C99标准支持VLA变长数组,可在编译选项中添加-std=c99开启C99支持。
//-std=c99
int n;
scanf("%d",&n);
int a[n]; //ok
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询