问题
单项选择题
有如下说明:
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)来表示。