C++教程:C++指针与数组详解

2020-01-06 12:16:48王振洲
我们在上一章说到,在向函数传递数组参数的时候,实质上是传递数组首元素的地址。那么数组和指针有着什么样的关系吗?

数组名的实质

数组名并不是一个普通的变量,而是一个指向数组首元素的指针。也就是说,我们可以用数组名来初始化一个对应类型的指针。既然如此,经过初始化的指针能否代替原来的数组名呢?答案是肯定的。

下面我们来看一段程序,了解数组名和指针的用法:(程序8.5)
#include "iostream.h"
int main()
{
   int a[6]={5,3,4,1,2,6};
   int *aptr=a;
   for (int i=0;i<6;i++)
   {
      cout <<a[i] <<aptr[i] <<*(aptr+i) <<*(a+i) <<endl;
   }
   return 0;
}