美文网首页
指针与多维数组

指针与多维数组

作者: Hy_Slin | 来源:发表于2018-02-11 14:05 被阅读0次

int a[10][20];
int b[10];
语法上讲 a[3][4]和b[3][4]都是对一个int类型对象的合法引用,但a是一个真正的二维数组,它分配200个int类型长度的存储空间,并且通过常规的矩阵下标公式20
row+col(row表示行,col表示列),计算得到元素a[row][col]的位置.
对b来说该定义只分配10个指针,并且没有初始化.他们的初始化必须以显式的方式进行,比如静态初始化或者通过代码初始化.假定b的每个元素都指向一个具有20个元素的数组,那么编译器就要分配200个int类型长度的存储空间和10个指针的存储空间.指针数组的一个重要优点在于,数组的每一行长度可以不同,
还得强调一下,对b来说,只是声明了10个指针,它所指的内容并不在这里体现,书上说20个元素的数组,这个有点误导的嫌疑,它可以随便指向任何大小.

相关文章

  • 指针与数组(2)

    本章主要整理归纳指针数组、数组指针、数组下标、多维数组的概念 链接上回:指针与数组(1) 上一回,提到了指针变量i...

  • 指针与多维数组

    int a[10][20];int b[10];语法上讲 a[3][4]和b[3][4]都是对一个int类型对象的...

  • C-数组篇(一维数组-上)

    数组,相信大家都使用过。本文将由浅入深的讨论数组,探索一些更高级的数组话题,如多维数组、数组与指针及数组的初始化等...

  • C语言的数组指针与指针数组(One)

    一、数组指针与指针数组: 数组指针<——>本质是指针 指针数组<——>本质是数组上图: 二、数组指针: int ...

  • 10.7 指针 :指针和多维数组

    指向二维数组的指针 关于二位数组的定义 以上三种均是实现对同一种二维数组的定义,尤其是在第三种定义中

  • C++11新特性(12)-使用auto表示多维数组指针

    多维数组的指针 多维数组是一种常见的数据结构,实际上是数组的数组。这个含义虽然很好理解,但是在定义操作数组数据的指...

  • C语言21 指针数组与数组指针

    C语言21 指针数组与数组指针 指针数组的定义 指针数组的赋值 结构体指针数组 分析下面的代码 数组指针的定义 数...

  • C中的多维数组和其指针(1)

    C中数组和指针的关系是紧密的,实际上C中的数组就是靠指针定义的——C Primer Plus(第五版) 多维数组和...

  • 指针数组 & 数组指针 & 函数指针

    一、指针数组 & 数组指针 普通数组: 即数组名a与(*p)等价,都代表数组的首地址,此为数组指针 指针数组: ...

  • 12.C语言提高(二)

    1.二维数组的本质 二维数组的本质是一个数组指针,放宽来说多维数组的本质也是一个数组指针 int arr[i][j...

网友评论

      本文标题:指针与多维数组

      本文链接:https://www.haomeiwen.com/subject/hncafxtx.html