指向二维数组的指针
int data [M][N];
data //二维数组首元素的地址(每个元素都是内含两个int类型元素的一维数组)
data + 2 //二维数组的第三个元素(即一维数组)的地址
* (data+2) //二维数组的第三个元素的首元素(一个int类型的值)地址
* (data+2)+1 //二位数组中第三个元素的第二个元素(一个int类型的值)地址
* ( * (data+2) + 1) //二维数组第三个元素的第二个int类型元素的值,即data[2][1]的值
关于二位数组的定义
int arry [] [cols] ;
int [] [cols] ; //省略参数
int (*p) [cols] ; //另一种语法
以上三种均是实现对同一种二维数组的定义,尤其是在第三种定义中
int (*p) [4] ; //声明一个指向二维数组的指针
//该数组内含2个数组元素,每个数组元素是含有4个int类型值的数组