int a[5][5]:二维数组
char **p:二维指针
int (*p)[10]:一个指针,指向有10个元素的数组,也称行指针
int* p[10]:一个数组,数组内每个元素都是指针
二维数组名不能传递给二级指针...二维数组跟二级指针,没有直接关系。...,它首先是一个指针,指向一个int*;
a是二维数组,它首先是一个指针,指向一个含有4个元素的int数组;
a和p类型不相同,赋值操作需要强制类型转换。...在这里,p1 和p2 都是数组指针,指向的是整个数组。...- 对于二维数组:
int a[3][4] = {0,1,2,3,4,5,6,7,8,9,10,11};
a[0]是该列的首地址&a[0][0],a是整个数组的首地址。