C语言第32课:比较指针与一维数组的关系,使用指针间接访问数组元素( 二 )

同样的道理 , 如果将一个整型指针变量 , 指向这个具有三个整型元素的数组 , 那么就可以使用这个指针变量来访问到这个数组的每一个元素了 。 比如我们可以写这样一段代码来演示一下:

示例代码1

上述这段C语言代码中 , 第5行定义了一个整型数组arr , 一共有三个元素 , 每个元素的值分别为:1、2、3

在第6行定义了一个整型指针变量p , 这个指针变量存储的值是数组arr的首地址 。 在第8行、第9行、第10行 , 就是分别使用*(p+0)、*(p+1)、*(p+2)来获取数组arr每个元素的值了 。

如果分析一下这段代码的本质 , 那就是指针变量p所指向的那段内存 , 就是数组arr所在的内存位置的首地址 。 除了上述这样的写法之外 , 使用指针变量访问数组元素的时候 , 还可以写成类似数组取元素值的表示方法 , 也就是指针变量后面加上“中括号” , 比如下面这段代码所示:

示例代码2

推荐阅读