如有下面说明语句:int a[4][5],(*p)[5];p=a;则对a数组元素的正确引用
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/09/22 05:32:00
如有下面说明语句:int a[4][5],(*p)[5];p=a;则对a数组元素的正确引用
A p+1
B *(p+3)
C *(p+1)+3
D *(*p+2)
其他为什么错了、D为什么对了帮我解释下
还有(*p)为什么加了括号
为什么可以写p=a
A p+1
B *(p+3)
C *(p+1)+3
D *(*p+2)
其他为什么错了、D为什么对了帮我解释下
还有(*p)为什么加了括号
为什么可以写p=a
a是一个(int类型的)二维数组(二维数组本质上是一个维数组)
p先是一个指针,这外指针指向一个一维数组(int类型的)
p=a表示将指针p的值 斌成二维数组的首地址
A p是一个指针P+1 实际上是首地址 挪5个int位置是地址 返回的是一个地址的值(指向一个int数组的地址)
B (P+3)取得的也是一个地址的值(指向一个int数组的地址)再结合* 得到是一个首地址的值然后再取它的内容做为地址
即 int a[4][5] 中的int a[2][0] 这个位置的地址 再进行退化成 一个一维数组的别名 即 也可看成一个 指向int类型的 地址
C 他是在指向int 类型的地址再向后挪3位 即 是到a[3][3]这个位置 的地址 返回 他还是一个指针
D 返回的是对应二维数组中a[2][0]的这个元素的值
总结一下
A返回的是a[1][0]这个位置的地址 并且 告诉编译器 它是一个指向一维int [5]类型数据的指针
B返回的是a[3][0]这个位置的地址 并且 告诉编译器 它是一个指向 int的地指针
C返回的是a[3][3]这个位置的地址 并且 告诉编译器 它是一个指向 int的地指针
D返回的是a[2][0]这个位置的别名 它是一个int类型
p先是一个指针,这外指针指向一个一维数组(int类型的)
p=a表示将指针p的值 斌成二维数组的首地址
A p是一个指针P+1 实际上是首地址 挪5个int位置是地址 返回的是一个地址的值(指向一个int数组的地址)
B (P+3)取得的也是一个地址的值(指向一个int数组的地址)再结合* 得到是一个首地址的值然后再取它的内容做为地址
即 int a[4][5] 中的int a[2][0] 这个位置的地址 再进行退化成 一个一维数组的别名 即 也可看成一个 指向int类型的 地址
C 他是在指向int 类型的地址再向后挪3位 即 是到a[3][3]这个位置 的地址 返回 他还是一个指针
D 返回的是对应二维数组中a[2][0]的这个元素的值
总结一下
A返回的是a[1][0]这个位置的地址 并且 告诉编译器 它是一个指向一维int [5]类型数据的指针
B返回的是a[3][0]这个位置的地址 并且 告诉编译器 它是一个指向 int的地指针
C返回的是a[3][3]这个位置的地址 并且 告诉编译器 它是一个指向 int的地指针
D返回的是a[2][0]这个位置的别名 它是一个int类型
如有下面说明语句:int a[4][5],(*p)[5];p=a;则对a数组元素的正确引用
若有定义语句int a[5], *p=a;,则对a数组元素的正确引用是什么 A *&a[5] B *a+2 C *(p+
若有以下说明和语句,int c[5],*p ;p=c ;能正确引用c数组元素的是?A) &p B)*(p+3) C) c
若有以下定义,则对a数组元素的正确引用是( ).int a[5],*p=a; A.*&a[5] B.a+2 C.*(p+
若有定义:int a[5],*p=a; 则对a数组元素地址正确引用的是( ).&a[5] p+2 a++ &a
若有以下定义和语句,则对a数组元素的正确引用为( ).int a[2][3],(*p)[3];p=a;
若有以下定义,则对a数组元素的正确引用是_________.int a[5],*p=a; a)*&a[5] b)a+2
若有说明语句:int a[10]; 则对a数组元素的正确引用是( ).A.a[10] B.a[-5] C.a(5)D.a
若有说明语句:int a[2][4];,则对a 数组元素的 正确引用是
若有说明:int a[5][5]; 则对数组元素的正确引用是______
C语言若定义int a[5],*p=a;则对a数组元素正确引用为哪个?为什么?
若有说明 int a[3][4],则对 a 数组元素的正确引用是