问题 单项选择题

若有定义int a[5],*p=a;则正确引用数组元素的是()。

A.*&a[5]

B.*a+2

C.*(p+5)

D.*(a+2)

答案

参考答案:D

解析:

本题考查通过指针引用数组元素。用指针引用数组有以下3种形式:①(p+n)与(a+n)表示数组元素a[n]的地址;②*(p+n)与*(a+n)表示数组元素a[n];③p[n]=*(p+n),都表示数组元素a[n]。

选项A、B没有这种引用形式;选项C,*(p+5)是引用数组的第6个元素,而数组一共有5个元素,出现越界;选项D,*(a+2)引用数组的第3个元素。

完形填空
单项选择题