[C&C++]C语言如何动态分配二维数组

#include 
int main()
{
      // 为二维数组分配3行
      int **a = (int **)malloc(3 * sizeof(int *));
      // 为每行分配5列
      for(int i = 0; i < 3; i++)
      {
           a[i] = (int *)malloc(5 * sizeof(int));
     }
     return 0;
 }
 // 先释放每列
 for(int i = 0; i < 3; i++)
     free(a[i]);
 // 再释放每行
 free(a);
 a = NULL; // 赋空

 

你可能感兴趣的:(C,C++,C#)