指针数组与数组指针

指针数组,首先它是一个数组,数组的元数都是指针,如:
int *p1[10] , 由于[]的优先级要高于*, 因此p1与[]结合,构成数组的定义,数组名为p1, int *修饰数组的内容,即数组中的每个元素。
数组指针,首先它是一个指针,它指向一个数组,它是“指向数组的指针”的简称,如:
int (*p2) [10], 由于()的优先级大于[], 因此*与p2构成指针的定义,指针变量名为p2, 它指向一个包含10个int类型的数据的一维数组,即数组指针。当二维数组分解为多个一维数组,则数组指针指向第一个一维数组。如a[3][10], p2=a, 则p2表示指向a[0],a[0]包含10个原数。

Leave a Reply

Your email address will not be published. Required fields are marked *