//=================================== // 二维数组 a[x][y]; // x-个数 y-长度 // 1. 长度知道 一个单位的数据长度 // 是指针 指向三个长度的数据单位的指针 ,可以看做int (*)[3] 整体 int (*p)[3]; int m[2][3]={ {1,2,3},{4,5,6}}; p = m; // 2. 个数知道,长度不知道 // 是数组 数组的个数知道 存储的是指针 int *p[2]; int m[2][3]={ {1,2,3},{4,5,6}}; *p = m[0]; *(p+1) = m[1]; // 3. 个数,长度 不知道 // x,y不知道,是指针的指针 两个x,y个数,长度,可变 int **p; int m[2][3]={ {1,2,3},{4,5,6}}; p = new int*[2]; *p = m[0]; *(p+1) = m[1];