#include "stdio.h"
void print1(int (*a)[5], int x, int y)
{
a + 1;
printf("%p", a);//二维数组地址
printf("\n");
printf("%p\n", (void *)a[0]);//二维数组数组地址、和将二维数组看做一维数组时首元素地址
printf("%p\n", &a[0]+1);//第二行地址
printf("%p\n", (void *)(a[0] + 1));//二维数组第一行第二个元素地址
printf("%p\n", (void *)(&a[0][1]));//二维数组第一行第二个元素地址
printf("%p\n", (void *)a[1]);//二维数组第二行地址
printf("%p\n", (void *)a[2]);//二维数组第三行地址
printf("%p\n", (void *)a[3]);
printf("%p\n", a+1);二维数组第二行地址
int i = 0;
int j = 0;
for (i = 0; i< x; i++)
{
for (j = 0; j < y; j++)
{
printf("%d", a[i][j]);
}
printf("\n");
}
}
int main()
{
int arr[3][5] = { { 1, 2, 3, 4, 5 }, { 2, 3, 4, 5, 6 }, { 3, 4, 5, 6, 7 } };
print1(arr,3,5);
return 0;
}