请教一个关于指针数组的数组名问题?

1.指针数组的数组名和一般数组(如int数组)有什么不一样吗?2.我创建一个指向指针数组的指针,为什么需要两个*号,如int**pointer=arr;是不是要告诉编译器... 1.指针数组的数组名和一般数组(如int数组)有什么不一样吗?
2.我创建一个指向指针数组的指针,为什么需要两个*号,如int** pointer = arr;是不是要告诉编译器,我指向的是一个指针,才需要**。
3.第二个问题是否和第一个问题有关。
展开
 我来答
自我编程
2019-12-31 · 科技优质答主
自我编程
采纳数:1481 获赞数:4283

向TA提问 私信TA
展开全部
指针数组也是数组,数组名都表示第一个元素的地址。
区别是两者元素不一样,int数组每个元素都是int型,数组名对应首元素地址,自然是int*型。
而指针数组,比如int *a[10];其每个元素都是int*型,数组名对应首元素地址,自然是int**型。
int *是指向int型数值地址的指针。
int**是指向指针变量地址的指针。
可见都是指向地址,关键地址里的内容不一样。所以当指取值的时候,第一个只要一个*就能得到地址对应的值。而第二个需要2个*。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式