若有以下定义,则对a数组元素的正确引用是( )。 int a[5],*p=a; A. *&a[5] B. a+2 C. *(p+5) D. *(a+2)

请帮我解释解释好么?不是一个答案

D正确,选D。因为:
A:语法合法,但[5]越界了。
B:a+2是地址,不是元素。
C:与A一样,只是指针写法,p+5越界了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-11
只有D一个对的 AC超出数组范围 B是地址本回答被提问者采纳