问题
单项选择题
若有以下说明和语句 int c[4)[5],(*p)[5]; p=c; 能够正确引用c数组元素的是
A.p+1
B.*(p+3)
C.*(P+1)+3
D.*(p[0]+2)
答案
参考答案:D
解析:本题中定义了一个二维数组c和一个指针数组p并初始化让它指向 c,显然此时p中的各元素为地址,选项A中p+1,此时其中的1代表的长度是整个二维数组c的长度,故p+1将让p指向c数组后面的元素,故不能引用c数组中的成员,选项D中p[0]指的是指针数组中的第一个元素的地址即c的首地址,此时的1的长度代表的是数组C中一行的长度,故p[0]+2代表的是第三行的首地址,而*(p[o]+2)将代表第三行的第一个元素的地址。