
若有定义int a[2][3],*p=a;则以下不能表示数组元素a[1][2]的是选项:A,*(a[1]+2) B,
若有定义inta[2][3],*p=a;则以下不能表示数组元素a[1][2]的是选项:A,*(a[1]+2)B,*(p[1]+2)C,p[5]D,*(p+5)...
若有定义int a[2][3],*p=a;则以下不能表示数组元素a[1][2]的是选项:A,*(a[1]+2)
B,*(p[1]+2)
C,p[5]
D,*(p+5) 展开
B,*(p[1]+2)
C,p[5]
D,*(p+5) 展开
2个回答
展开全部
选BCD
C、D选项等价,p是a的地址,a是数组名即数组首元素a[0][0]的地址的地址,所以p解引用一次得到的值还是一个地址,和数组元素自然不同
B选项,P指针解引用2次依然还是个地址,故不和a[1][2]相同
A选项,*(a[1]+2)根据数组与指针的等价关系(arr[i]==*(arr+i)),所以*(a[1]+2)==
a[1][2]
p要解引用3次才可能是数组的元素
C、D选项等价,p是a的地址,a是数组名即数组首元素a[0][0]的地址的地址,所以p解引用一次得到的值还是一个地址,和数组元素自然不同
B选项,P指针解引用2次依然还是个地址,故不和a[1][2]相同
A选项,*(a[1]+2)根据数组与指针的等价关系(arr[i]==*(arr+i)),所以*(a[1]+2)==
a[1][2]
p要解引用3次才可能是数组的元素
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询