如何动态的分配一个二维数组(百度超详细版)

https://jingyan.baidu.com/article/46650658f407aff548e5f871.html
搜索以上网址即可

附上我自己打的代码,运行过,可以正常输出数字

#include
#include


int main()
{
//我们要创建一个4x4的二维数组,具体操作的行列可以用变量代替

int **a,i;//创建一个二级指针
a=(int**)malloc(sizeof(int*)*4);
/*这个类型为二级指针的“一维数组”里面每个元素装的
  都是一个一维数组的首地址。
*/
for(i=0;i<4;i++)
{
  a[i]=(int *)malloc(sizeof(int)*4);
  //为每一个一维数组分配内存
}
a[0][3]=4;
printf("%d",a[0][3]);
return 0;
}

你可能感兴趣的:(C语言指针内存问题)