c语言指针类型可以用数组接收吗
时间: 2023-12-13 08:03:08 浏览: 78
C语言 指针数组
是的,C 语言中的指针类型可以用数组接收,因为指针和数组在很多情况下是可以互换使用的。
例如,如果有一个指向整数类型的指针变量 p,我们可以使用数组名作为指针变量 p 的值,如下所示:
```c
int arr[5] = {1, 2, 3, 4, 5};
int *p = arr; // 数组名作为指针变量 p 的值
```
在这个例子中,数组名 arr 表示数组的首地址,即第一个元素的地址,因此将数组名赋值给指针变量 p 后,p 指向的就是数组的首地址,也就是第一个元素的地址。
同样的,我们也可以使用指针运算来操作数组元素,如下所示:
```c
int arr[5] = {1, 2, 3, 4, 5};
int *p = arr; // 数组名作为指针变量 p 的值
printf("%d\n", *(p + 2)); // 输出数组中第三个元素的值
```
在这个例子中,使用指针运算 p + 2 来计算出数组中第三个元素的地址,然后使用解引用运算符 * 来访问该地址对应的元素值。
阅读全文