问题 单项选择题

有如下说明: 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

解析: 数组元素a[0]可以用表达式。(p+0),即*p来引用;数组元素a[1]可以用表达式*(p+1)来引用,在这里,p+1的值就是数组元素a[1]的地址,*(p+1)就代表存储单元 a[1],这里的一对圆括号不可少。同样,数组元素a[9]可以用表达式。(p+9)引用。因此,当指针变量p指向a数组的起始地址时,若0≤i<10,则数组元素a[i]可以用*(p+i)来表示。

多项选择题
判断题