C语言问题,指针引用数组。int s[4][5],(*ps)[5];ps=p;则对s数组元素的正确

C语言问题,指针引用数组。int s[4][5],(*ps)[5];ps=p;则对s数组元素的正确引用形式是()A.ps+1 B.*(ps+3) C.ps[0][2] D.*(ps+1)+3 要说明原因,解释下程序的意思以及选项的意思,错的错错在哪里,对的表示数组哪个元素

c是对的,p[0][2]就是二维数组第0行第2列的那个元素
A ps是二维数组名,ps+1代表的是第1行的地址
B *(ps+3)= ps[3] = p[3] ,p[3] 是第三行,不是元素
c对的
D *(pS+1)+3 = p[1]+3 p[1]是第一行首元素的地址,p[1] = &p[1][0],那么p[1]+3就是第一行第三个元素的地址 也就是p[1]+3 = &p[1][3],所以错了
温馨提示:答案为网友推荐,仅供参考
相似回答