#include <stdio.h>
int main()
{
char arr[2][6]={"hello","world"};
int a[2][6]={1,2,3,4,5,6,7,8,9};
char (*p)[][6]=arr;
char (*p1)[][6]=&arr;
char (*p2)[][6]=&arr[0][0];
int (*p3)[][6]=a;
int (*p4)[][6]=&a;
int (*p5)[][6]=&a[0][0];
for(int i=0;i<2;i++)
{
for(int j=0;j<6;j++)
{
printf("%c,%c,%c",(*p1)[i][j],(*p1)[i][j],(*p2)[i][j]);
printf("\t");
}
printf("\n");
}
for(int i=0;i<2;i++)
{
for(int j=0;j<6;j++)
{
printf("%d,%d,%d",(*p3)[i][j],(*p4)[i][j],(*p5)[i][j]);
printf("\t");
}
printf("\n");
}
}
大家注意, 只有用二维数组指针指向二维数组的时候,*指针名才能当成数组名使用,用来遍历出输各个元素,同样要注意指针类型和数组元素类型要相同 |
|