若有以下定义和语句:int s[4][5] (*p)[5];p=s;则对s数组元素的正确引用形式是()

大学网课 已帮助 人

若有以下定义和语句:int s[4][5],(*p)[5];p=s;则对s数组元素的正确引用形式是()

A.p+1

B.*(p+3)

C.p[0][2]

D.*(s+1)+3

若有以下定义和语句:int s[4][5] (*p)[5];p=s;则对s数组元素的正确引用形式是()

热搜:检验检疫类别P.R/Q.S的含义是什么

回答

共1条回复

  • C 解析:本题首先定义了一个4行5列的数组s,又定义了一个指向由5个元素组成的一维数组的指针变量ps,通过赋值让ps指向了数组s的首地址。此时数组元素s[i][j]的地址为“*(ps+1)+j”,数组元素s[i][j]可表示为*(*(ps+1)+j)。选项B表示的是数组元素a[3][0]的地址;选项D表示的是数组元素s[1][3]的地址;选项A中“ps+1”为指向下一行(第二行)的地址;选项c中ps[0][2]无条件等价于“*(ps[0]+2)”又无条件等价于”(*(ps+0)+2)”,即是数组元素s[0][2]。所以,4个选项中C为所选。