指针数组
int *a[10];
上面这行代码就定义了一个指针数组 -- 就是数组a中存放了十个地址。
其实很简单,我们先以一个数组为例: int a[10]; 这定义了一个数组a,存储了十个int类型的变量。
[] 表示定义一个数组, 10 表示有十个数据, int 表示数据的类型。所以就是定义了一个包含十个int类型数据的数组。
再说 int* a[10] : [] 表示定义了一个数组, 10表示有十个数据, int* 表示数据都是指针类型(也就是用于存放地址), 所以就是定义了一个含有十个指针的指针数组。
数组指针
数组指针: 指向一个数组的指针。
int (*a)[10];
上面的代码,数组指针a就是指向一个数组。
其实也很简单, 我们上面说到 int a[10] 是定义了一个有10个int型元素的数组。我们在这里可以先将(*a)简单看成一个a,这时就和上面一样了,也是定义了一个有10个int型元