永发信息网

c语言,看d选项中的&a,答案说是int***,&a不应该是int*吗,为什么是答案说的那样

答案:2  悬赏:50  手机版
解决时间 2021-01-07 13:15
  • 提问者网友:姑娘长的好罪过
  • 2021-01-07 03:00
c语言,看d选项中的&a,答案说是int***,&a不应该是int*吗,为什么是答案说的那样
最佳答案
  • 五星知识达人网友:逃夭
  • 2021-01-07 03:57
声明的是a[2][3],以a[0][0]为例说明:因为&a[0][0]==a[0],&a[0]==a;那么&a==&&a[0]==&&&a[0][0]。由于a[0][0]是int型,所以&a[0][0]就是int *型,&&a[0][0]就是int **型,&&&a[0][0]就是int ***型。故,说&a是int ***型的答案正确。此题的正确选项是C。追问那&a是int*型的说法对吗追答当然是错误的。只有int a;的说明后,&a才是int *型。这里a是被说明为二维数组的,它本身就是一个int **型常指针。追问在帮我解释一下a选项吧还有答案说a作为数组名,不能取地址,是什么意思啊
全部回答
  • 1楼网友:山河有幸埋战骨
  • 2021-01-07 04:19
因为二维数组a实际上是int**
那么&a就是 int ***追问a[1][2]是int**,然后,&a[1][2]是int*,为什么a是int**,&a就是int***,这两个有什么区别吗追答a[1][2]不是int** , a[1][2]是一个值, &a[1][2] 是int*, 而p数组中的各个元素是int*追问答案说a作为数组名,不能取地址,是什么意思啊,为什么不能取地址
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯