指针数组和数组指针有什么区别
时间: 2024-01-12 12:02:35 浏览: 172
指针数组和数组指针的区别
指针数组和数组指针有以下区别:
1. 定义方式不同:
- 数组指针的定义形式是`int (*p)[n];`,其中`p`是一个指针,指向一个长度为`n`的整型一维数组。
- 指针数组的定义形式是`int *p[n];`,其中`p`是一个数组,包含了`n`个指向整型的指针。
2. 数据类型不同:
- 数组指针是一个指针,它指向一个整型一维数组。
- 指针数组是一个数组,它包含了多个指向整型的指针。
3. 内存布局不同:
- 数组指针在内存中占据的空间大小是一个指针的大小。
- 指针数组在内存中占据的空间大小是多个指针的大小,每个指针指向一个整型变量。
4. 使用方式不同:
- 数组指针可以通过指针运算来访问数组中的元素,例如`(*p)[i]`。
- 指针数组可以通过数组下标来访问数组中的指针,例如`p[i]`。
5. 用途不同:
- 数组指针常用于多维数组的传递和访问。
- 指针数组常用于存储多个指针,例如存储字符串数组。
阅读全文