#include<stdio.h>
int main()
{
  int **arr;               //定义一个二级指针,用于接收一维数组地址
  int i = 0, j = 0;
  arr = (int **)malloc(sizeof(int*)* 3);       //arr将会接收连续动态开辟3个为int*类型的空间首地址
 for (i = 0; i < 3; i++)
   {
     arr[i] = (int *)malloc(sizeof(int)* 4);         //用for循环再在这3个空间中继续开辟4个为int类型的空间
    }
 for (i = 0; i < 3; i++)
   {
     for (j = 0; j < 4; j++)            
       {
         arr[i][j] = 4 * i + j + 1;             //用for循环为这个二维数组赋值
        }
    }
 for (i = 0; i < 3; i++)
   {
     for (j = 0; j < 4; j++)
       {
         printf("%d ", arr[i][j]);           //打印这个二维数组
       }
   

}
printf("\n");
system("pause");
return 0;
}