#include <stdio.h>
int *_print(int (*_pointer)[2],int n);
void main(void)
{
int demo[2][2]={{1,2},{3,4}};
int *p,row;
printf("请输入行号:");
scanf("%d",&row);
p=_print(demo,row); // 实参是二维数组名
printf("%d\n",*(p+1)); // 输出row行1列的元素
}
/* 定义指针函数_print
形参是指向由2个元素组成的一维数组的指针
函数返回值是 地址
*/
int *_print(int (*_pointer)[2],int n)
{
int *p;
p=*(_pointer+n); // p的值是实参二维数组&?[n][0]的地址
return p; // 返回地址
}
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/d52a2834349b033b3a243bd917ce36d3d539bd01?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)