指针数组与数组指针

指针数组:首先它是一个数组,数组的元素都是指针。是储存指针的数组。

数组指针:首先它是一个指针,它指向一个数组。是指向数组的指针。

a)int *p1[10];

b)int (*p2)[10];

其中a)是指针数组,b)是数组指针;这里需要明白一个符号之间的优先级问题:[] > *

因此,a)中p1先与[]结合成p1[10],即构成一个数组,int *修饰的是数组的内容(即数组的元素)。int *p1[10]定义了一个数组,它的每个元素是一个 int*(指向int类型的指针)。所以,int *p1[10]是一个指针数组。

b)int (*p2) [10]; 首先(*p2)构成一个指针变量,int修饰的是数组的内容(每个数组的元素),因此p2是一个指针,它指向一个包含10个int类型数据的数组,即数组指针。

posted @ 2012-08-11 10:48  blankqdb  阅读(155)  评论(0)    收藏  举报