指针数组跟数组指针怎么分辨
时间: 2023-08-22 20:10:26 浏览: 72
指针数组和数组指针是C语言中两个不同的概念。
指针数组是指一个数组,其中的每个元素都是指针。可以将其理解为一个数组,每个元素都指向不同的内存地址。
例如,int *ptrArr[5]表示一个包含5个元素的指针数组,每个元素都是int类型的指针。
数组指针是指一个指针,它指向一个数组。可以将其理解为一个指向数组开头的指针。
例如,int (*ptrArr)[5]表示一个指向包含5个int类型元素的数组的指针。
要区分它们,可以通过以下方式来记忆:
1. 指针数组中,数组名在前,指针类型在后。
2. 数组指针中,指针类型在前,数组名在后,并用括号括起来。
希望能帮到你!如果还有其他问题,请随时提问。
相关问题
数组指针跟指针数组的定义
数组指针和指针数组是两个不同的概念。数组指针是指向数组的指针,而指针数组是一个数组,其中的每个元素都是指针。下面是它们的定义和示例:
1. 数组指针的定义:int (*p)[n],其中p是一个指向整型数组的指针,n是数组的长度。例如,定义一个指向长度为10的整型数组的指针p:
```c
int arr[10];
int (*p)[10] = &arr;
```
2. 指针数组的定义:int *p[n],其中p是一个指针数组,n是数组的长度,每个元素都是一个指向整型变量的指针。例如,定义一个包含3个指向整型变量的指针的指针数组p:
```c
int a = 1, b = 2, c = 3;
int *p[3] = {&a, &b, &c};
```
函数指针指针函数数组指针指针数组辨认
函数指针是指向函数的指针变量,而指针函数是返回指针的函数。函数指针的声明格式为:类型说明符 (*函数名)(参数),例如int (*fun)(int x,int y)。指针函数的定义是数组中的元素全为指针变量的数组,而数组指针是指向数组首元素地址的指针。
辨认这些概念时,有几点可以注意:
- 首先,看声明中的括号,确定优先级。括号内的内容先结合。
- 其次,根据声明中的指针符号和数组符号,判断是指针还是数组。
- 最后,根据函数关键字,判断是指针函数还是函数指针。
阅读全文