C 指针数组是一个数组,其中的每个元素都是指向某种数据类型的指针。
指针数组存储了一组指针,每个指针可以指向不同的数据对象。
指针数组通常用于处理多个数据对象,例如字符串数组或其他复杂数据结构的数组。
让我们来看一个实例,它用到了一个由 3 个整数组成的数组:
可能有一种情况,我们想要让数组存储指向 int 或 char 或其他数据类型的指针。
下面是一个指向整数的指针数组的声明:
int *p[MAX];
在这里,把 p声明为一个数组,由 MAX 个整数指针组成。因此,p 中的每个元素,都是一个指向 int 值的指针。下面的实例用到了三个整数,它们将存储在一个指针数组中,如下所示:
也可以用一个指向字符的指针数组来存储一个字符串列表,如下:
再看一个简单实例,我们首先声明了一个包含三个整数指针的指针数组 ptrArray,然后,我们将这些指针分别指向不同的整数变量 num1、num2 和 num3,最后,我们使用指针数组访问这些整数变量的值。
指针数组在C中非常有用,特别是在处理具有不定数量元素的数据结构时,如动态分配的字符串数组或动态创建的结构体数组。