指針數組是由指針變量組成的數組。每個元素都是一個指向特定數據類型的指針。通過指針數組,可以創建一個指向不同數據類型的指針的集合。
在C語言中,可以使用以下語法定義指針數組:
data_type *array_name[size];
其中,data_type是指針數組中存儲的數據類型,array_name是指針數組的名稱,size是指針數組的大小。
指針數組的元素可以是任何數據類型的指針,例如int指針、char指針、float指針等。在定義指針數組時,需要指定元素的數據類型。
下面是一個示例,演示如何定義和使用指針數組:
#include <stdio.h>
int main() {
int num1 = 10, num2 = 20, num3 = 30;
int *ptr_array[3];
ptr_array[0] = &num1;
ptr_array[1] = &num2;
ptr_array[2] = &num3;
printf("Value of num1 = %d\n", *ptr_array[0]);
printf("Value of num2 = %d\n", *ptr_array[1]);
printf("Value of num3 = %d\n", *ptr_array[2]);
return 0;
}
在上面的示例中,首先定義了三個int變量num1、num2和num3,然后定義了一個指針數組ptr_array,大小為3。接下來,將num1、num2和num3的地址賦給ptr_array的相應元素。最后,使用指針間接訪問這些變量的值,并將結果打印到控制臺上。
輸出結果為:
Value of num1 = 10
Value of num2 = 20
Value of num3 = 30
指針數組的常見用途是動態分配內存塊,并將這些內存塊的地址存儲在數組中。這樣,可以通過遍歷指針數組訪問這些內存塊。此外,指針數組還可以用于實現多態性和保存不同類型的數據。