数组的数组转换为指针的问题

xiaofengzzz 2008-03-29 02:09:53
上午看到c++ primer里面对于多维数组转换指针的描写不是很明白,没理解下来,但书上这部分的篇幅也不多,所以在这等写各们指点下。
数组的数组转换成指针是指向第一个内层数组的指针 。
int ia[3][4];
int (*ip)[4] = ia;
这样看起来是可以大约明白,但是讲得少,不能深入的理解,估计过明天就忘记差不多了,请高手再讲下,有助于我加深理解啊!
...全文
120 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
feny911 2008-03-31
  • 打赏
  • 举报
回复
倒,又搞错符号。

上面的 <=> 应该是 =>
feny911 2008-03-31
  • 打赏
  • 举报
回复
3楼4楼的不懂别乱说。

对于数组名
int aa[3];
int ia[3][4];
aa 等价于 &aa
ia 等价于 &ia

数组名也不等价于指针

int ia[3][4];
int (*ip)[4] = ia;
<=>
ip == ia == ia[0][0]
(ip + 1) == ia[1][0]
queshangxintou 2008-03-29
  • 打赏
  • 举报
回复
一维数组名 等价于 指针
二维数组名 等加以 指向指针的指针
ttkk_2007 2008-03-29
  • 打赏
  • 举报
回复
int ia[3][4];
int (*ip)[4] = ia;
===========
你应该看一下行指针和元素指针
若改成
int ia[4];
int (*ip)[4] = ia; //错了,应是int (*ip)[4] = &ia;
不想低调 2008-03-29
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 xiaofengzzz 的回复:]
看一遍明白一点,提个问自己又明白点,C++这玩意,还真要时间泡,比泡马子还要时间〜〜〜
[/Quote]
hehe
xiaofengzzz 2008-03-29
  • 打赏
  • 举报
回复
看一遍明白一点,提个问自己又明白点,C++这玩意,还真要时间泡,比泡马子还要时间〜〜〜

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧