**
int (*p)[3]的意义
**
int a[2][3];
int **p = a;//错误
这个代码的错误之处在于a是一个数组,它的成员也是数组,所以a叫做“数组的数组”——C++中严格说来没有二维数组。那么,要用一个指针来记录a,就要用一个能表示“数组的数组”的指针,以下代码是正确的:
int (*p)[3] = a;//正确 这里的p是个指针,指向一个有三个int类型数据的数组
只有这样才能保证++p使p指向a的下一对象(该对象是一个数组)。
顺便提一句:不要写成“int *p[3];”