c语言数组指针和指针数组代码
时间: 2023-09-04 10:13:09 浏览: 67
当涉及到数组和指针的组合时,有两个重要的概念需要理解:指针数组和数组指针。
1. 指针数组(Pointer Array):指针数组是一个数组,其元素都是指针类型。每个元素指向一个特定类型的数据。可以通过索引访问每个元素,然后再通过该元素进行间接访问所指向的数据。
例如,下面是一个包含三个整数指针的指针数组的示例:
```c
int num1 = 10, num2 = 20, num3 = 30;
int *ptrArr[3]; // 声明一个指针数组
ptrArr[0] = &num1; // 将指针指向num1
ptrArr[1] = &num2; // 将指针指向num2
ptrArr[2] = &num3; // 将指针指向num3
printf("%d\n", *ptrArr[0]); // 输出10
printf("%d\n", *ptrArr[1]); // 输出20
printf("%d\n", *ptrArr[2]); // 输出30
```
2. 数组指针(Pointer to Array):数组指针是一个指针,它指向一个数组。可以通过对数组指针进行解引用来访问数组的元素。
例如,下面是一个指向整型数组的数组指针的示例:
```c
int arr[] = {1, 2, 3, 4, 5};
int (*ptr)[5]; // 声明一个指向包含5个整数的数组的指针
ptr = &arr; // 将指针指向数组
printf("%d\n", (*ptr)[0]); // 输出1
printf("%d\n", (*ptr)[1]); // 输出2
printf("%d\n", (*ptr)[2]); // 输出3
```
在这个示例中,`ptr` 是一个指向包含5个整数的数组的指针,通过对 `ptr` 进行解引用,我们可以访问数组 `arr` 的元素。
需要注意的是,指针数组和数组指针是不同的概念。指针数组是一个数组,其中的元素都是指针类型;而数组指针是一个指针,它指向一个数组。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)