int a[2][3] int (*p)[3] = a;

inta[2][3]int(*p)[3]=a;为什么第(i,j)元素用*(*(p+i)+j)表示,谁能详细解释一下。... int a[2][3]
int (*p)[3] = a;为什么第(i,j)元素用*(*(p+i)+j)表示,谁能详细解释一下。
展开
 我来答
哈拉足球
2018-12-02
知道答主
回答量:2
采纳率:0%
帮助的人:1951
展开全部
a[3][2]={{1,2},{3,4},{5,6}};
int (*p)[3] = a;(*P)代表的是行;则p指针指向的是函数3个元素(每个元素两个值)的数组;*(p+1)为这个数组第二个元素({3,4})的首地址,(*(p+1)+1)为{3,4}里的第二个元素,为4。
ChengZiXianS
2017-11-08 · TA获得超过1011个赞
知道小有建树答主
回答量:1434
采纳率:72%
帮助的人:462万
展开全部
p表示首地址,二维数组实际是一维连续放置,比如也为19*19围棋棋盘第ij个元素转为连续放置为19*i+j
更多追问追答
追问
那两个*分别什么作用能解释一下吗
追答
解引用,不想解释,给个例子自己体会,*(p+1)=p[1]
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式