int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则不能表示a数组元素的表达式是(B) 求解释

高手哪位知道,int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则不能表示a数组元素的表达式是(B) 求解释
最新回答
逍遥独淩迗

2024-11-30 20:01:55

因为数组的下标是从0开始的,也就是说a[0]=1,a[1]=2,a[2]=3,a[3]=4,a[5]=6,a[6]=7,a[7]=8,a[8]=9,a[9]=10。所以B不对;
p

a
都是指向数组a说地址的指针,它们指向的都是a[0];
a[p-a],因为p=a=a数组的首地址,所以
p-a
=0,a[p-a]
=
a[0]。
你模仿不起

2024-11-30 09:15:06

不能表示a数组元素的表达式是(
b)
a[10]
)----因为数组a的最大下标只能是9,即a[9],
a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],
一共10个元素