北京秋栗香营业时间:在C语言中如何运用malloc()函数定义多维数组

来源:百度文库 编辑:查人人中国名人网 时间:2024/04/27 01:45:05
#include "stdio.h"
#include <alloc.h>
main()
{int *ip;
int i,k,j;
ip=(int*)malloc(4*20*27*sizeof(int));
for(i=0;i<4;i++)
for(j=0;j<20;j++)
for(k=0;k<27;k++){
ip[i][j][k]=9;
printf("%d ",ip[i][j][k]);
}
free(ip);

}这是我编的程序可是出现错误!
错误:11,10行:无效间接运算在main函数中

多唯数组只是操作内存的一种方式,可以这么用:
先计算你的多位数组占的空间,比如char a[3][2]那么需要6个char的空间
那么先申请一段长度6的空间,

char *p = (char*)malloc(sizeof(char));

然后就可以使用指针P进行数组操作了比如:p[0][1]

记得用完要释放哦: free(p);