引言:初学指针数组的心得与体会
指针数组:本质上是数组!!!数组元素是指针(地址)
关于数组指针的初始化等问题请参考其他文章,这里直接讲应用。
列:利用指针数组打印分别三个整形数组的元素。
代码如下:
int main()
{
int a[] = { 1,2,3,4,5 };
int b[] = { 2,3,4,5,6};
int c[] = { 3,4,5,6,7 };
int* arr[3] = {a,b,c};
int i = 0;
for (i = 0; i < 3; i++)
{
printf("%d\n",*arr[i]);//指针数组每个元素都是数组的首元素地址。
}
for (i = 0; i < 3; i++)
{
int j = 0;
for (j = 0; j < 5; j++)
{
printf("%d", *(arr[i]+j));//指针数组的常用用法——调用数组内容!注意是*(arr[i]+j)等价与arr[i][j](模拟二维数组,但不是二维数组!)
}
printf("\n");
}
return 0;
}
该程序的功能是利用指针数组的引用来分别打印a、b、c数组元素。
注意:我们知道数组名代表数组首元素的地址,那么这里的*(arr[i]+j)就可以看成*(a\b\c+j),可以轻松的找到数组元素!
总结:利用指针数组可以很好的提高数组调用效率,更加快速和方便的找到数组元素。