C中用指针表示一个二维数组中任意的元素书上写是a【i】【j】-查字典问答网
分类选择

来自罗结才的问题

  C中用指针表示一个二维数组中任意的元素书上写是a【i】【j】=(*p+m*i+j)m是数组的第二维的维数若有以下的定义和语句,则下面各个符号的正确含义是:inta[3][4],(*p)[4];p=a;p+1p+1是第几行

  C中用指针表示一个二维数组中任意的元素书上写是a【i】【j】=(*p+m*i+j)m是数组的第二维的维数

  若有以下的定义和语句,则下面各个符号的正确含义是:

  inta[3][4],(*p)[4];

  p=a;

  p+1

  p+1是第几行的地址为什么

  假如P有了定义的地址*P是否就是代表这个地址里的值

1回答
2020-02-06 07:19
我要回答
请先登录
韩志杰

  你前面的提问到是没太懂你的意思,但你补充回答的问题我到是懂的!

  如果你定义(*p)[4],即定义了一个有四个元素的一维数组

  你再令p=a;这时p就是指向二维数组的第零行的首地址,切忌第零行的首地址和第零行零列地址是不同的,第零行的首地址因该表示为*p,即*p=a[0],表示第零行第零列的地址,即是a[0][0],

  所以这里a,*a,a[0],a[0][0]的关系要弄懂啊!a=&a[0],a[0]=&a[0][0],a[0]=*a.这里你弄懂了,那你应该知道p+1就是第一行的首地址啦,*(p+1),就是第一行第零列的首地址,即是a[1][0]的地址.所以如果是*(p+1)+1;那么这就代表a[1][1]的地址.这样你再举一反三,弄懂二维数组中的表示,或则去看看谭浩强的“c程序设计”中的指针引用二维数组,里面很详细的

  当让是的啊!呵呵

2020-02-06 07:20:12

最新问答

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  •