C语言指针数组和数组指针的区别(附带实例)
在 C 语言中,指针数组是一个数组,其元素都是指针。换句话说,指针数组是存储指针的数组。
例如,一个整型指针数组可以表示如下:
下面是指针数组的应用实例:
C语言中,指向一个数组的指针简称为数组指针。数组指针是一个指针,它指向一个数组。换句话说,数组指针是指向数组的指针。
例如:
总结,指针数组是一个数组,其元素为指针;数组指针是一个指针,它指向数组。
下面我们来看一个使用整数来区分指针数组和数组指针的示例:
例如,一个整型指针数组可以表示如下:
int *ptr_arr[5]; // 一个包含5个整型指针的数组在这个例子中,ptr_arr 是一个数组,该数组包含 5 个整型指针,每个元素都可以存储一个整型变量的地址。
下面是指针数组的应用实例:
#include <stdio.h> int main() { // 定义三个整型数组 int arr1[] = {1, 2, 3}; int arr2[] = {4, 5, 6}; int arr3[] = {7, 8, 9}; // 定义一个指针数组,存储整型数组的地址 int *pArr[3] = {arr1, arr2, arr3}; // 计算每个整型数组的元素之和 for (int i = 0; i < 3; i++) { int sum = 0; for (int j = 0; j < 3; j++) { sum += pArr[i][j]; } printf("arr%d 的和: %d\n", i + 1, sum); } return 0; }运行结果为:
arr1 的和: 6
arr2 的和: 15
arr3 的和: 24
C语言中,指向一个数组的指针简称为数组指针。数组指针是一个指针,它指向一个数组。换句话说,数组指针是指向数组的指针。
例如:
int (*pB)[10];这里的 pB 就是一个数组指针。
总结,指针数组是一个数组,其元素为指针;数组指针是一个指针,它指向数组。
下面我们来看一个使用整数来区分指针数组和数组指针的示例:
#include <stdio.h> int main() { int num1 = 1, num2 = 2, num3 = 3, num4 = 4, num5 = 5; // 指针数组 int *ptr_array[] = {&num1, &num2, &num3, &num4, &num5}; // 二维整数数组 int int_array[][3] = { {10, 11, 12}, {20, 21, 22}, {30, 31, 32}, }; // 数组指针 int (*array_ptr)[3] = int_array; return 0; }在这个示例中,我们创建了一个整数指针数组 ptr_array 和一个数组指针 array_ptr:
- ptr_array 是一个整数指针数组,该数组包含 5 个整数指针。每个指针指向一个整数变量。
- array_ptr 是一个指向二维整数数组的指针。这个二维数组存储了多个整数,每一行包含 3 个整数。