数组元素偏移量

在网上看了一些博客和资料总结一下,如有错误,请不要点赞。

  数组偏移量的定义:当前数组元素的地址与数组首地址的差值。

举例:一维数组:

一维数组:a[n]

        对于一维数组,比如在a[0...5]中求a[4]的偏移量

          ①  数组a的下标从0开始

              则偏移量为4,(0,1,2,3这四个)

          ②  数组a的下标从k开始(k<=4,保证所求元素在数组中)

              则偏移量d=4-k

二维数组:

             A[][]={{1,2,3},{4,5,6},{7,8,9}},转一下就是A[3][3];
             4的偏移量就是3,8的偏移量就是7。
             对一个数组 A[M][N]中任一元素A[i][j]的偏移量的计算方法就是:i*N+j;
             比如:
                  上面的4位置是A[1][0],它的偏移量就是1*3+0=3;
                   8的位置是A[2][1],它的偏移量就是2*3+1=7。

三维数组:a[m][n][o]

          三维数组计算a[i][j][k]的公式为d=i*n*o+j*o+k

          例如:数组a[0..3,0..2,1..4],求a[2,2,2]的偏移量,则可求得d=2*3*4+2*4+(2-1)=33

          

猜你喜欢

转载自blog.csdn.net/weixin_41631266/article/details/83549871