作业帮 > 综合 > 作业

设有定义:int a[2][2]={1,2,3,4},(*p)[2];,则在语句p=a;p++;后,**p的值为(3)

来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:综合作业 时间:2024/06/17 19:13:00
设有定义:int a[2][2]={1,2,3,4},(*p)[2];,则在语句p=a;p++;后,**p的值为(3)
设有定义:int a[2][2]={1,2,3,4},(*p)[2];,则在语句p=a;p++;后,**p的值为(3)
int (*p) [2] //定义指向一维数组的指针;
p=a //将首行的地址赋给p. 此时,*p的值为二维数组a的首行的地址,**p即为首行第一个元素的值,即1;
p++ //此时p指向二维数组a的第二行,*p的值为第二行的地址,**p为第二行第一个元素的值,即3.
若有不明白的可以继续问哈!
再问: 就是说:原本是二维数组的a[n][m];给个指针*p=a; 然后进行一维操作的话,就仅仅控制了 a[n]的值么?
再答: 其实都可以控制! *(*p+n)+m)就是a[n][m]的值.