#include int main() { int *arr[10]; // arr 数组用来存储地址,每个元素都是 int * int a = 1, b = 2; arr[0] = &a; // 将 a 的地址存放在 arr 数组的第一个元素中 arr[1] = &b; a = a + b; printf("arr[0] = %d\n", *arr[0]); // *arr[0] = 3 int arr2[3] = {10, 20, 30}; // 将 arr2 数组的第二个元素的地址存放在 arr 数组的第三个元素中 arr[2] = &arr2[1]; printf("arr[2] = %d\n", *arr[2]); // *arr[2] = 20 int *p = arr[2]; // arr[2] => int * => &arr2[1] *p = 100; for (int i = 0; i < 3; i++) { printf("%d ", arr2[i]); // 10 100 30 // printf("%d ", *(arr2 + i)); // 10 100 30 } return 0; }