淡若轻风

博客园 首页 新随笔 联系 订阅 管理

数组是C,C++,C#语言中经常用到的数据类型,平时使用较多的是一维数组。

如果遇到多维数组,很多人就会感到迷惑,本人也一样。

个人的习惯是,对于让我迷惑不太懂的知识,在写程序的时候,尽量减少使用的频率,尽最大可能不用。

前段时间,因为工作需要,重新去了解了一下多维数组,有感而发,写下自己的总结:

先从一维数组开始,数组定义如下:

  Type   arrayName[Array_Size];

总结说明,针对一维数组,Type表示数组的类型,arrayName表示数组的名字。

一维数组比较简单,在内存中的样子如下:

 

接下来是多维数组,先从二级数组开始,二组数组定义如下:

                      Type arrayName[Array_size_1][Array_size_2];

以上二维数组的定义,二维数组整个占的空间大于等于:

      size_t arraySize=Array_size_1 * Array_size_2 * sizeof(Type)

要理解二维数组,需要借鉴一维数组,根据数组的定义,我们从右往左进行理解。

左边Array_size_2表示第二个维度的大小,此时,可以将第二个维度,理解成一个元素

也就是第一个维度Array_size_1中单个元素的大小。

为帮助理解,参考下面图片:

通过以上图片,可以更直观的理解二维数组

依次类推,采用同样的原理,就可以理解三维,四维等多维数组。

 

以上都是个人的观点,不见得一定是正确的,如果有错误的地方,碰巧被“您”看到,麻烦指出来,谢谢。

 

posted on 2024-10-23 01:27  淡若轻风  阅读(2)  评论(0编辑  收藏  举报