指针进阶(一)指针数组

一:指针数组

指针数组用来存储指针,指针数组中的元素都必须具有相同的存储类型、指向相同数据类型的指针变量。

指针数组的形式以整型为例 

int *p[]: []的优先级高于*,所以p先与[]结合,表示数组,int *表示p[]中所存放数据的类型

我们如何使用指针数组呢?

首先我们先定义几个变量,int a=10;int b=20;int c=30;  分别将a,b,c进行取地址存放在 

int *d[3] 中;如图所示。

指针进阶(一)指针数组_第1张图片 

我们将指针存放进指针数组中后,如何取出来呢?

指针进阶(一)指针数组_第2张图片

 

 

 

我们用d[i]先去除我们所存放的地址,然后将它解引用,就可以得到我们想得到的数据。

 

 

那么,指针数组对于数组的存取又是怎样的呢?

我们先定义3个整型类型的数组,int a[3]={1,2,3};int b[3]={2,3,4};int c[3]={3,4,5};其中一维数组的数组名就表示首元素的地址,我们将地址放入指针数组中int *p[3]={a,b,c};

指针进阶(一)指针数组_第3张图片


 

 

之后我们如何取出来呢?

指针进阶(一)指针数组_第4张图片

 

 

我们用p[i]来取出我们所存放的地址,j来表示每个地址中所存的元素的下标,我们对其

解引用,取出我们要的数值。虽然,与二维数组取元素的方法类似,但是我们不可以把它当作二维数组对待。

 

 

在函数中我们如何对指针数组进行传参呢?

指针进阶(一)指针数组_第5张图片

我们用二级指针来存放一级指针,然后将数值进打印。

以上就是对于指针数组的简单介绍。

你可能感兴趣的:(c语言,c++)