int* p[5];//p是一个数组,5个元素,每个元素都是int*;
int* p(double);//p是一个函数,形参double,返回类型int*;
int(*p)[5];//数组指针,p是一个指针,指向5个元素的int数组,如果不是迫不得已,不要用这种类型的指针;
int x[5] = {11,12,13,14,15}
p = &x;//因为x表示的是数组第一个元素的地址(&x[0]) int * 类型,p指向的是数组的地址,所以用&x
//用&x表示数组地址,int(*)[5]类型
int z[8][5]; //z数组名表示z[0]的地址,是一个int[5]的地址,z是一个int(*)[5]类型;
p = z;//z可以赋值给p,因此p可以当二维数组使用;
本文详细解析了C语言中指针与数组的关系,包括不同类型的指针定义、数组的指针表示法以及如何通过指针操作数组。通过具体实例说明了如何正确地使用指针来访问和操作一维及二维数组。

2326

被折叠的 条评论
为什么被折叠?



