cout<<*(*(p+n)+i)<<" ";这是啥意思

[复制链接]
查看11 | 回复2 | 2014-8-7 14:18:52 | 显示全部楼层 |阅读模式
p+n得到一个地址值addr0,*(p+n)就是取得存在addr0的整数值,即p是一个指向整形数的指针;*(p+n)+i得到另一个地址值addr1,*(*(p+n)+i)就是取得存在在addr1地址的数值,然后输出到流cout。...
回复

使用道具 举报

千问 | 2014-8-7 14:18:52 | 显示全部楼层
因为P是二维指针,其实在内存也是按一维来存储的。P指向首地址P i011i2n0 1
2 3n1 4
5 6n2 7
8 9所以P+N就是指向nx,*(p+n)取一维的指针,因为P是二维的,可用一维指针PP代替,则变成*(pp+i)这就相当于一维指针的访问了,PP指向ix。因为是指...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行