int w[3][4]={{0,1},{2,4},{5,8}}; int(*p)[4]=w;则数值为4的表达式是_.
来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/05/25 15:30:20
int w[3][4]={{0,1},{2,4},{5,8}}; int(*p)[4]=w;则数值为4的表达式是_.
a.*w[1]
b.*p[1]
c.w[2][2]
d.p[1][1]
a.*w[1]
b.*p[1]
c.w[2][2]
d.p[1][1]
选d
首先要明白w和p是一样的,是一个东西,这是p的定义int(*p)[4]=w决定的
然后你看d项,p[1][1]就是w[1][1],根据数组的定义w[1][1]就是4
*w[1]相当于w[0][1]
*p[1]相当于p[0][1]也就是w[0][1]
再问: 我想不通的就是int(*p)[4]=w;意思是p是一个指向有4个元素的数组的指针,然后呢?
再答: 你想想w是什么吧,w[i][4]=*(w+i)[4],也就是说w,w+1,w+2都是指向有4个元素的数组的指针!w和p的类型是完全一样的,现在把w赋给p,你就把p当做w来用就可以了,它们是等效的。 关于多重指针,个人觉得还是谭浩强的书讲的明白,很多人瞧不起他,我觉得他的书却有自己的好处,就是这些细节讲的很明了,推荐你看一下
首先要明白w和p是一样的,是一个东西,这是p的定义int(*p)[4]=w决定的
然后你看d项,p[1][1]就是w[1][1],根据数组的定义w[1][1]就是4
*w[1]相当于w[0][1]
*p[1]相当于p[0][1]也就是w[0][1]
再问: 我想不通的就是int(*p)[4]=w;意思是p是一个指向有4个元素的数组的指针,然后呢?
再答: 你想想w是什么吧,w[i][4]=*(w+i)[4],也就是说w,w+1,w+2都是指向有4个元素的数组的指针!w和p的类型是完全一样的,现在把w赋给p,你就把p当做w来用就可以了,它们是等效的。 关于多重指针,个人觉得还是谭浩强的书讲的明白,很多人瞧不起他,我觉得他的书却有自己的好处,就是这些细节讲的很明了,推荐你看一下
int w[3][4]={{0,1},{2,4},{5,8}}; int(*p)[4]=w;则数值为4的表达式是_.
int w[3][4]={{0,1},{2,4},{5,8}}; int (*p)[4]=w; 则数值为4的表达式是
说明语句如下:int a[10]={1,2,3,4,5,6,7,8,9},*p=a;则数值为6的表达式是( ).
有如下说明 int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则数值为9的表达式是 A) *
4.33 若有int w=1,x=2,y=3,z=4;则表达式w
int[][4]={1,2,3,4,5,6,7,8};int(*p)[4]=a;则表达式**(p+1)-*(*p+1)的
设变量说明:int w=6; 则语句while (w++>0) w-=4;的循环次数为_______.A)1 B)2次
若有char h=`a`,g=`f`;int a[6]={1,2,3,4,5,6};则数值为4的表达式为:( )
已知int a[] = {1,2,3,4,5,6,7,8,9,10,11,12},*p = a+2;,则值为3的表达式是
若有以下定义,“int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a”,则值为6的表达式是
int a[]={1,2,3,4,5,6},*p=a;表达式(*++p)++的值是.
定义 int a[]={1,2,3,4,5,6} ,*p=a;表达式 ++(*++p) 的值是____________.