网上找了下,大概有两种方法:
一、用malloc
int n,*a;
scanf("%d",&n);
a=(int*)malloc(sizeof(int)*n);
二、用calloc
在创建动态数组的过程中我们要遵循一个原则,那就是在创建的时候从外层往里层,逐层创建;而释放的时候从里层往外层,逐层释放。
一维动态数组的创建:
#include
#include
int main()
{
int n1,i;
int *array;
printf("请输入所要创建的一维动态数组的长度:");
scanf("%d",&n1);
array=(int*)calloc(n1,sizeof(int));
for(i=0;i
{
printf("%d\t",array[i]);
}
printf("\n");
for(i=0;i
{
array[i]=i+1;
printf("%d\t",array[i]);
}
free(array);//释放第一维指针
return 0;
}
阅读(472) | 评论(0) | 转发(0) |