三维数组地址计算

把三维坐标想象成立方体。例如A[5][4][3]表示层高为5、行数为4、列数为3
因为数数的基本单位其实是列,二维坐标是行号列号,虽然平时可能习惯行号列号层号,但是按照二维的规律,那么三维坐标应该是层号行号列号

 

设A[5][4][3]在内存中首地址为1000,每个元素占2个存储单元,按行优先存储

求A[4][3][2]的首地址(A的下标从0开始)

那么A[4][3][2]中4、3、2分别对应这个点的层数行号列号
位置为4*(4*3)+3*3+2=59

第一个为4则说明是4前面有0,1,2,3共4整层

先把4层算出来,每层就是行乘以列4*3=12

然后后面的[3][2]按照2维数组(列优先同理)算就行3*3代表行数2代表第3个的首地址
每个元素两个存储单元,最终结果为1000+59*2=1118
 

评论 17
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Helloworld-睖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值