问题 单项选择题

有如下说明 int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则数值为9的表达式是

A.*p+9

B.*(p+8)

C.*p+=9

D.p+8

答案

参考答案:B

解析: 本题考查的是指针的运用。因为指针p初始指向数组a的首地址,所以*p返回的是数组元素a[0]的值,因此选项A的结果是1+9=10;选项B是取指针p往后移动8个单位位置处的值,即a[8]的值9;选项C中表达式的值和选项A相同,只不过选项C中的表达式会改变a[0]的值;选项D的值是一个地址值,即数组元素 a[8]的地址值,该值无法确定。所以,4个选项中只有选项B正确。

选择题
多项选择题 X型题