问题
单项选择题
设有以下定义 int a[4][3]={{1,2,3},{4,5,6},{7,8,9),{10,11,12}; int *ptr[3]={a[0]},*p=a[0]; 则以下能正确表达数组元素a[1][2]的表达式是( )
A.*((*ptr+1)[2])
B.*(*(p+5))
C.*((*ptr+1)+4)
D.*(*(p+1)+2)
答案
参考答案:C
解析: "int *ptr[3]={a[0]}"定义了指针数组ptr并给这个数组的第一个元素赋值"a[0]","*((*ptr+1)+4)"的含义是:取指针数组ptr的第一个元素值再加5所得的指针量指向的内存单元的值。