如何把二维,三维数组的地址传递给指针啊?

一维我知道,比如a[2],只要把a传递给指针*p就行了,然后就可以对P进行++--*操作,可是如果是a[2][3]呢,怎么传递啊?还有三维的a[2][3][4]... 一维我知道,比如a[2],只要把a传递给指针*p就行了,然后就可以对P进行++ --*操作,可是如果是a[2][3]呢,怎么传递啊?还有三维的a[2][3][4] 展开
 我来答
furuip
推荐于2016-06-22 · TA获得超过175个赞
知道答主
回答量:79
采纳率:0%
帮助的人:65.3万
展开全部
二维数组int a[2][3]对应的指针:int (*p)[3],p++则p指向数组的第二行,*p是a[1][0]的地址。
三维数组int a[2][3][4]对应的指针:int (*p)[3][4],p++则p指向数组的第二个二维数组。
以此类推,高维数组都是低维数组组成的数组。
Alec072
2009-06-23 · TA获得超过611个赞
知道小有建树答主
回答量:286
采纳率:75%
帮助的人:13.1万
展开全部
简单数据类型的数组,不管几维,在内存里都是顺序存放。P++,P--就可以操作。
比如:对于a[2][3]
*P=a[1][3]; P++;
其实就指向了a[2][0],因为它排在a[1][3]后面。
可以自己写个小程序试试。先给个二维数组赋值,p指向首地址,再依次p++试试。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
L_o_o_n_i_e
2009-06-23 · TA获得超过4.2万个赞
知道大有可为答主
回答量:8507
采纳率:38%
帮助的人:5151万
展开全部
传首地址:
1维 &a[0]
2维 &a[0][0]
3维 &a[0][0][0]
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友a74a3bb
2009-06-23
知道答主
回答量:6
采纳率:0%
帮助的人:0
展开全部
一楼正解。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式