美文网首页C/C++
C中的多维数组和其指针(1)

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

作者: Dumbass | 来源:发表于2017-06-19 15:29 被阅读0次

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

多维数组和n级指针紧密联系,这其中涉及的内容比较多,本篇文章讲其中的一部分。
首先,我们声明一个二维数组d_array[2][2]
int d_array[2][2];
在一维数组中,数组和指针的一个关系就是array是指向array[0]的指针,这在多维数组中也不例外,例如,对于上述数组d_array就有关系式:
d_array == &d_array[0] //d_array是d_array[0]的指针
但基于现在的上下文,我们是在讨论多维数组,d_array[0]也是一个数组,所以,同样地,也有:d_array[0] == &d_array[0][0] //d_array[0]是d_array[0][0]的指针
由上两个结论,我们可以得出:**d_array == d_array[0][0] //d_array是d_array[0][0]的指针的指针
基于上述对多维数组与指针的关系,我们不难理解下面这一些简单的指针加法:
d_array+1 == &d_array[1] //对d_array+1得到指向下一个数组首元素的指针
d_array[0]+1 == &d_array[0][1] //对d_array[0]+1可以得到d_array[0]数组中第2个元素的地址
本文就先讲到这里

相关文章

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

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

  • 学习笔记3(指针运算,函数参数与指针,数组指针,二级指针)

    一、指针运算 二、数组与指针 三、指针和函数参数 java中: C/C++中: 四、指针数组 五、 二级指针 六、...

  • 指针与数组(2)

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

  • 0基础学习C语言第七章:数组(2)

    C语言 多维数组 C 语言支持多维数组。多维数组声明的一般形式如下: type name[size1][size2...

  • C语言

    C 指针、指针变量、函数指针、指针函数、指针数组、数组指针、C 数组

  • C语言 - 中

    总目录 前言 本文介绍C语言的指针:一、指针介绍二、指针使用三、数组指针和指针数组 函数指针和指针函数 环境 1...

  • 2018-05-23

    numpy 1.numpy的多维数组切片例如: 从例子中我们可以得到结论,对于多维数组,[a:b,c:d,e:f,...

  • C#——数组

    关于数组,在C#中我们可以创建一维数组,多维数组以及交错数组。一维数组和多维数组都好理解,交错数组是个什么鬼?其实...

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

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

  • C语言的指针与数组(进阶篇之一)

    一、一维数组与指针 (1).数组指针在C语言中,数组的首地址称为数组指针。而C++规定,数组的首地址可用数组名a表...

网友评论

    本文标题:C中的多维数组和其指针(1)

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