欢迎来到飞鸟慕鱼博客,开始您的技术之旅!
当前位置: 首页知识笔记正文

二维数组 数组名

墨初 知识笔记 118阅读

什么是二维数组?

答:C 语言对二维数组采用这样的定义方式,使得二维数组可被看作一种特殊的一维数组,即它的元素为一维数组。 比如“int a [3] [4];”可以看作有三个元素,每个元素都为一个长度为 4 的一维数组。 而且 a [0]、a [2]、a [3] 分别是这三个一维数组的数组名。 下面来验证一下看看是不是这么回事儿: 可见 a [0] 确实是第一行一维数组的数组名,其他同理。 在 C 语言中,二维数组中元素排列的顺序是按行存放的,即在内存中先顺序存放第一行的元素,再存放第二行的元素,这样依次存放。

如何理解c语言中二维数组的数组名?

答:如何理解c语言中二维数组的数组名? 如何理解c语言中二维数组的数组名? 例如定义一个二维数组int a [3] [3],通过测试发现&a、a和*a三个值相等,意味着a的值等于它自身的地址,无法理解为什么会这样。

二维数组名a是一个指针吗?

答:二维数组名a不用说肯定是一个指针,我们知道一维数组名是一个指向首元素的指针,我们是通过指针步长来判断的(即:指针进行+1所跳过的字节数)那么二维数组名的步长是多少呢? 我们发现,步长是12,我们创建的是一个2行3列的二维数组,每一行的字节数正好是12(即:元素个数*每个元素所占字节数 = 12)所以可以得出二维数组名是一个指向每一行的指针。

二维数组是按行排列的吗?

答: 在C语言中,二维数组是按行排列的。 也就是先存放 a[0] 行,再存放 a[1] 行,最后存放 a[2] 行;每行中的 4 个元素也是依次存放。 数组 a 为 int 类型,每个元素占用 4 个字节,整个数组共占用 4×(3×4)=48 个字节。

声明:无特别说明,转载请标明本文来源!