先放代码
返回M*N数组
#include#include //声明返回函数 int **doubleArray(int **a); int main(){ int M=4; int N=4; int a[M][N]; int count=1; for(int i=0;i for(int j=0;j a[i][j]=count; count++; } } int **c; c=doubleArray(a); for(int i=0;i for(int j=0;j printf("%d ",c[i][j]); } printf("n"); } } //返回函数 int **doubleArray(int **a){ int **b=(int **)malloc(M*sizeof(int *));// 申请M个指针型字节的空间 for(int i=0;i b[i]=(int *)malloc(N*sizeof(int));//每行再申请列空间 } for(int i=0;i for(int j=0;j b[i][j]=a[i][j]; } } return b; }
在C语言中无法直接在方法中返回数组。需要通过指针实现。



