三维数组地址计算

三维数组地址计算把三维坐标想象成立方体 例如 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 分

把三维坐标想象成立方体。例如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
 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/214767.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午3:29
下一篇 2026年3月18日 下午3:30


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号