不连续:
int **creat_arry()
{
int **p;
p=(int **)malloc(C*sizeof(int *));
if(!p) return NULL;
for(int i=0;i<C;i++)
{
*(p+i)=(int *)malloc(R*sizeof(int));
if(*(p+i)==NULL)
{
return NULL;
}
}
return p;
}
连续内存
int **creat_arry_continuns()
{
int **p;
p=(int **)malloc(C*sizeof(int *));
if(!p) return NULL;
p[0]=(int *)malloc(C*R*sizeof(int));
if(!p[0])
{
free(p);
return NULL;
}
for(int i=1;i<R;i++)
{
p[i]=p[i-1]+C;
}
memset(p[0],0,sizeof(p[0]));
return p;
}