若有定义:Int a[10],*p=a,则*(p+5)表示()

A、元素a[5]的地址
B、元素a[5]
C、元素a[6]的地址
D、元素a[6]

B
*(p+5)表示p+5这个地址指向单元内容,当然是int的,所以不是地址
p=a;的赋值后,p存放的地址就是数组起始地址也就是数组元素a[0]的地址,*p可以写成*(p+0),p[0],相当于a[0]
*(p+5)相当于p[5],a[5],即变量a[5]的内容
所以应当选择B
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-07-09
选A ,因为*p=a,这时是把数组a的首地址传给了指针p,而数组的定义是从a[0]开始的,所以p+5表示的是元素a[5]的地址,希望你现在明白了
第2个回答  2016-07-08
B
既然有p = a
那么 *(p + 5) p[5] *(a + 5) a[5] 都是一样的
相似回答