数组指针和指针数组如何取值
时间: 2023-07-20 14:18:49 浏览: 111
数组和指针
数组指针和指针数组是两种不同的指针类型,它们的取值方法也不同。
数组指针是指向数组的指针,可以通过指针的方式访问数组元素。例如:
```
int arr[3] = {1, 2, 3};
int (*p)[3] = &arr; // 定义一个指向数组arr的指针
int x = (*p)[1]; // 取出arr[1]的值,等价于p[0][1]
```
指针数组是一个数组,其中每个元素都是指针类型,可以通过数组下标的方式访问指针元素指向的值。例如:
```
int a = 1, b = 2, c = 3;
int *arr[3] = {&a, &b, &c}; // 定义一个指针数组
int x = *arr[1]; // 取出第二个指针元素指向的值,等价于b
```
需要注意的是,数组指针和指针数组的类型声明中的括号是有区别的,数组指针中的括号用于指定指针指向的数组的类型,指针数组中的括号用于指定数组元素的类型为指针。
阅读全文