指针数组和数组指针 C
#include <stdio.h>
int main() {
// 指针数组示例
int a = 10, b = 20, c = 30, d = 40, e = 50;
int *intPtrArray[5]; // 创建一个包含 5 个整数指针的指针数组
intPtrArray[0] = &a; // 第一个元素指向整数变量 a
intPtrArray[1] = &b; // 第二个元素指向整数变量 b
intPtrArray[2] = &c; // 第三个元素指向整数变量 c
intPtrArray[3] = &d; // 第四个元素指向整数变量 d
intPtrArray[4] = &e; // 第五个元素指向整数变量 e
printf("Pointer Array Example:");
for (int i = 0; i < 5; i++) {
printf("intPtrArray[%d] = %d", i, *intPtrArray[i]);
}
// 数组指针示例
int arr[3][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}};
int(*ptrToArray)[4]; // 创建一个指向包含 4 个整数的数组的数组指针
ptrToArray = arr; // 让数组指针指向数组 arr
printf("Array Pointer Example:");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
printf("arr[%d][%d] = %d", i, j, (*ptrToArray)[j]);
}
ptrToArray++; // 移动数组指针到下一行
}
return 0;
}