源自C primer plus P273第七题
在经过长时间的迷惑后,我放弃了使用二级指针传参
#include<stdio.h>
#define N1 3
#define N2 5
void f(double (*a)[N2],double (*p)[N2]);
void show(double (*p)[N2]);
int main(void)
{
double a[N1][N2]=
{
{1,2,3,4,5},
{6,7,8,9,10},
{11,12,13,14,15},
};
//show(a);
double b[N1][N2];
double (*p)[N2]=b;
//show(p);
//printf("%lf",(*p)[2]);
f(a,p);
show(b);
}
void f(double (*a)[N2],double (*p)[N2])
{
int i;
int j;
for(i=0;i<N1;i++)
{
for(j=0;j<N2;j++)
{
*(*(p+i)+j)=*(*(a+i)+j);
}
}
//show(a);
}
void show(double (*p)[N2])
{
int i;
int j;
for(i=0;i<N1;i++)
{
for(j=0;j<N2;j++)
{
printf("%.1lf ",*(*(p+i)+j));
}
printf("\n");
}
}