C语言中的函数。请教

来源:百度知道 编辑:UC知道 时间:2024/06/17 16:47:23
double **TwoArrayAlloc(int r, int c)
{
double *x,**y;
int n;

x=(double*)calloc(r*c, sizeof(double));
y=(double**)calloc(r, sizeof(double *));
for(n=0; n<=r-1; ++n)
y[n]=&x[c*n];
return(y);
}

我是初学者,看不懂这一段,是什么意思?前面两个星号是什么呀?

double **TwoArrayAlloc(int r, int c) /*说明他是一个返回指针的函数,**TwoArrayAlloc()是函数名*/

{
double *x,**y; ///指针X和二级指针Y
int n; //定义整型N

x=(double*)calloc(r*c, sizeof(double)); //calloc分配内存,sizeof(double)求double型的长度
y=(double**)calloc(r, sizeof(double *));
for(n=0; n<=r-1; ++n) //循环控制
y[n]=&x[c*n]; //将指针X的地址赋值给二级指针Y
return(y); //返回Y
}

还不清楚的叫我

double **TwoArrayAlloc(int r, int c) /*说明他是一个返回指针的函数,**TwoArrayAlloc()是函数名*/

{
double *x,**y; ///指针X和二级指针Y
int n; //定义整型N

x=(double*)calloc(r*c, sizeof(double)); //calloc分配内存,sizeof(double)求double型的长度
y=(double**)calloc(r, sizeof(double *));
for(n=0; n<=r-1; ++n) //循环控制
y[n]=&x[c*n]; //将指针X的地址赋值给二级指针Y
return(y); //返回Y
}
呵呵 来晚了 o(∩_∩)o...

**y可以理解为指针的指针