概述
网上找了下,大概有两种方法:
一、用malloc
int n,*a;
scanf("%d",&n);
a=(int*)malloc(sizeof(int)*n);
二、用calloc
(区别大概是calloc分配的是连续内存,calloc在动态分配完内存后,自动初始化该内存空间为零,而malloc不初始化,里边数据是随机的垃圾数据。转自http://blog.csdn.net/bigloomy/article/details/6581706)
在创建动态数组的过程中我们要遵循一个原则,那就是在创建的时候从外层往里层,逐层创建;而释放的时候从里层往外层,逐层释放。
一维动态数组的创建:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n1,i;
int *array;
printf("请输入所要创建的一维动态数组的长度:");
scanf("%d",&n1);
array=(int*)calloc(n1,sizeof(int));
for(i=0;i<n1;i++)
{
printf("%dt",array[i]);
}
printf("n");
for(i=0;i<n1;i++)
{
array[i]=i+1;
printf("%dt",array[i]);
}
free(array);//释放第一维指针
return 0;
}
本段转自http://blog.csdn.net/bigloomy/article/details/6615012
最后
以上就是老迟到板凳为你收集整理的C语言中定义动态数组的全部内容,希望文章能够帮你解决C语言中定义动态数组所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复