定义了一个二维数组,要用指针指向其地址,需要定义指向N个类型数数组的指针,作为参数传递的时候需要至少定义第二维的大小。因为二维数组指针是有大小的。 int array1[][5] = { {1, 2, 0, 3, 4}, {2, 3, 4, 5, 1}, {1, 1, 5, 3, 0} }; int (*p)[5] = array1; int *q = array1[1]; int *qq = &array1[0][0]; 用其他的方式不能取得二维数组的地址。