指针数组和数组指针的区别
经常遇到的问题,又容易混淆,所以做个总结。
指针数组和数组指针分别是什么意思?这个用中文来讲不太好明了,但是英语的表达就清晰多了。
指针数组:array of pointers,即用于存储指针的数组,也就是数组元素都是指针
数组指针:a pointer to an array,即指向数组的指针。
还要注意他们的用法区别
例如
int* a[4] 指针数组
表示:数组a中的元素都为int型指针
元素表示:*a[i],*(a[i])是一样的,因为[]的优先级高于*
int(*a)[4] 数组指针
表示:指向数组a的指针
元素表示:(*a)[i]