刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

单选题

定义int a[5], *p = a; 则对a数组元素的正确引用是(   )。

A

*&a [5]

B

a +2

C

*(p+5)

D

*(p+2)

使用微信搜索喵呜刷题,轻松应对考试!

答案:

D

解析:

【喵呜刷题小喵解析】在C语言中,数组名其实就是指向数组第一个元素的指针,因此 `a` 本质上是一个指向 `int` 类型的指针,其值就是数组首元素的地址。而 `*p = a;` 这行代码表示 `p` 是一个指向 `int` 类型的指针,并且它的初始值就是数组 `a` 的首元素的地址,所以 `p` 和 `a` 指向的是同一个地址。因此,我们可以通过 `*(p+i)` 的方式访问数组的第 `i` 个元素,其中 `i` 是从0开始的索引。所以选项D `*(p+2)` 表示的是数组的第3个元素,这是正确的引用方式。选项A `*&a[5]` 是错误的,因为数组名是指向首元素的指针,所以 `a[5]` 是越界的。选项B `a+2` 也不是正确的引用方式,它表示的是数组第3个元素之后的地址,而不是第3个元素本身。选项C `*(p+5)` 表示的是数组的第6个元素,这是越界的。
创作类型:
原创

本文链接:定义int a[5], *p = a; 则对a数组元素的正确引用是(   )。

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share