若有以下定义:
int a[3][2],(* prt)[2];
在说明符(*prt)[2]中,由于一对圆括号的存在,所以*号首先与prt结合,说明prt是一个指针变量,然后再与说明符[2]结合,说明指针变量prt的基类型是一个包含有两个int元素的数组。在这里,prt的基类型与a的相同,因此prt=a;是合法的赋值语句。Prt+1等价于a+1,等价于a[1].当prt指向a数组的天头时,可以通过以下形式来引用a[i][j];
(1) *(prt[i]+j)
(2) * (*(prt+i)+j)
(3)(* (prt+i))[j]
(4) prt[i][j]
在这里,prt是个指针变量,它的值可变,而a是一个常量。