数组的静态存储方式
1 数组元素的静态存储映像
依照数组的定义,数组的存储方式只能是顺序的。由于计算机的存储空间是一维的,所以所以要将数组中的源于按照某种次序映射到一维存储空间,也就是降维问题。
C语言中是按照低维下标优先的原则进行存储的2 静态数组元素地址计算
为了实现数组的随机存储,也就是能够通过下标直接找到相应的地址,就需要建立一个存储位置与下标的关系
一维数组假设数组中每个元素占用L个单位。则
若Loc(a0)=b;
则Loc(a1)=b+L,Loc(ai)=b+i*L
二维数组 A[n][n]
Loc(a00)=b;
则Loc(ai0)=b+L*i*n
则Loc(aij)=b+(n*i+b)*L
三维数组 A[m][n][p]
Loc(a000)=b
则
Loc(ai00)=b+i*n*p*L
Loc(aij0)=b+(i*n*p+j*p)*L
Loc(aijk)=b+(i*n*p+j*p+k)*L
浙公网安备 33010602011771号