C语言 int a[ ]={0,1,2,3,4,5,6,7,8,9},*p=a,i; 0<=i<=9,对a数组元素引用不正确的是:

2024-12-04 00:13:03
推荐回答(2个)
回答1:

B 是不是a[i]?? //是a[i]

C p[i] 是相当于a[i],这不是在获取元素a[i]的地址吗? 为什么C也正确??// p[i] 是相当于a[i]

A 中为什么能用用p减a??a[p-a]什么意思?? //p的值就是a,所以p-a的值为0,相当于a[0]
D 是不是相当于*a[i], 因而不正确?? //是的*(a+i)就是a[i],那么再*a[i]就错了

回答2:

首选 (a+i)就是个地址 一个* 代表 这个地址的数据 也就是数组第 i 个数字
再加个* 就没有意义了。。