指针数组是数组,用来存放指针的数组
int* arr1[5]为存放整型指针的数组
char* arr2[5]为存放字符型指针的的数组
#include<stdio.h>
int main(){
int arr1[]={1,2,3,4,5};
int arr2[]={2,3,4,5,6};
int arr3[]={3,4,5,6,7};
int* parr[]={arr1,arr2,arr3};
return 0;
}
parr[] 为整形指针的数组
int i;
int j;
for(i=0;i<3;i++){
for(j=0;j<5;j++){
//printf("%d ",parr[i][j]);
//*(p+i) = p[i]
printf("%d ",*(parr[i]+j));
}
printf("\n");
}
接上面的代码,将指针数组中的内容打印出来
其中这是两种输出的方式,但是该指针数组并不是二维数组,因为二维数组是连续存储的,而且该指针数组中的arr1、arr2和arr3并不是连续存储的,所以该数组指针并不是二维数组。