**int (*p1)[3][4] = &arr;** //&arr是整个数组的地址
**int (*p2)[4] = arr;** //arr是首元素的地址{1,2,3,4} 数组的地址 arr是一长度为4的数组
**int *p3 =*arr;** //数组地址的间接引用,首元素地址
#include <stdio.h>
int main()
{
/*int arr[3][4] ={ {1,2},{2,5,4},{0,1}};*/
int arr[3][4] ={1,2,3,4,5,6,7,8,9,10,11,12};
int (*p1)[3][4] = &arr;
int (*p2)[4] = arr;
int *p3 =*arr;
int i,j;
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{
printf("%d\n",(*p1)[i][j]);
}
}
for(i=0;i<4;i++)
printf("%d\n",(*p2)[i]);
printf("%d",(*p3));
return 0 ;
}