在C语言中,指针数组是一个存储指针的数组,每个元素都是一个指针,指向一个特定类型的变量
- 声明指针数组: 首先,你需要声明一个指针数组,指定数组的大小和类型。例如,声明一个整数指针数组,大小为5:
int *ptr_array[5];
- 初始化指针数组: 你可以逐个初始化指针数组的元素。例如,将每个元素指向一个整数变量:
int num1 = 10, num2 = 20, num3 = 30, num4 = 40, num5 = 50; ptr_array[0] = &num1; ptr_array[1] = &num2; ptr_array[2] = &num3; ptr_array[3] = &num4; ptr_array[4] = &num5;
或者,你可以使用循环一次性初始化所有元素:
int values[] = {10, 20, 30, 40, 50}; for (int i = 0; i < 5; i++) { ptr_array[i] = &values[i]; }
- 访问指针数组的元素:
要访问指针数组的元素,只需使用数组索引和
*
运算符。例如,打印第一个元素的值:
printf("Value of ptr_array[0]: %d\n", *ptr_array[0]);
- 使用指针数组: 你可以将指针数组作为函数参数传递,以便在函数中修改原始变量的值。例如,交换两个整数的值:
void swap(int *ptr1, int *ptr2) { int temp = *ptr1; *ptr1 = *ptr2; *ptr2 = temp; } int main() { int num1 = 10, num2 = 20; printf("Before swap: num1 = %d, num2 = %d\n", num1, num2); swap(&num1, &num2); printf("After swap: num1 = %d, num2 = %d\n", num1, num2); return 0; }
总之,C语言中的指针数组是一种非常有用的数据结构,可以让你在数组中存储和操作指针。通过正确使用指针数组,你可以提高代码的灵活性和效率。