若有一下定义,int s[4][6],t[6][4],(*p)[6]且0=<i<6,则正确的赋值语句是 A.p=t,B.p=s,C.p=s[i],D.p=t[i]
发布网友
发布时间:2022-04-28 17:07
我来回答
共1个回答
热心网友
时间:2023-09-12 22:20
答案是B,数组本身也是指针,二维数组和指针数组是一样的,所以排除C、D(一维数组)
s[4][6] 相当于 (*)[6], t[6][4] 相当于(*)[4],所以选B追问谢谢你帮我解答啊!太感谢了!不过我想再问一下0=<i<6你得到了什么信息?这个题主要考查的是什么?还有(*p)[6]是个指针数组,那么单独拿出p来为什么CD就不行了?又不是(*p)[6]=s[i]他是p丫
追答P就代表了整个指针数组,p是个变量,这个变量的类型是指针数组,你理解有误
通过0<i<=6 也可以直接排除s[4][6]和t[6][4],因为当i = 6 时,必然超出索引值
PS:你完全可以自己写个程序验证一下的啊,看下报错你就明白了