指针数组:顾名思义他是一个数组,不过只是数组的元素是指针
比如
int *a[10]
这样就是定义了一个元素为整型指针的数组,元素的个数为10
而数组指针:根据叫法可以知道他是一个指针,不过他是指向数组的
比如
int (*a)[10]
a就是数组指针,也可以说是指向数组的指针。
还有就是关于将二维数组进行参数传递的时候必须要指明列的数目。
原因如下:
1.虽然二维数组也是指针,但是他是指针的指针,所以形参也必须是指针的指针
2.为什么不用制定行数呢,这么说吧,参数对于行数的指明基本是没有关系的,但是除了行数以后的东西都必须指明
比如你在传递一维数组的时候传过去的时候就有没有去制定他们的行数,就算你制定了编译器也只是把这个数组当作指针去操作,所以编译器对行数的指定没有要求。