c语言函数传出二维数组 c语言二维数组作为参数传入函数

C语言函数中怎么返回一个二维数组

1、我们首先定义一个二级指针和一个行列变量[int ** array,row,column;]。

成都创新互联公司是一家专业从事网站建设、网络营销、成都小程序开发、网站运营为一体的建站企业;在网站建设告别千篇一律,告别似曾相识,这一次我们重新定义网站建设,让您的网站别具一格。响应式网站设计,实现全网营销!一站适应多终端,一样的建站,不一样的体验!

2、然后我们编写进入行和列的语句,代码如图所示。

3、接下来我们可以用一维数组打开一维一维数组。

4、接下来,我们使用[array [i] =(int *)malloc(sizeof(int)* column);]来为数组再次生成包含该数组的新数组。

5、然后我们可以为它赋值并输出[代码如图所示]。

6、运行程序后我们可以看到这种效果。

转:C语言中如何将二维数组作为函数的参数传递

下面例子,作为 指针传递 和 行指针传递。

#include stdio.h

void fun(int *p1,int (*p2)[3], int row, int col){

int i,j;

for (i=0;i3;i++){

for (j=0;j4;j++) {

printf("%d ",p1[i*col+j]);

p2[j][i]=p1[i*col+j];

};

printf("\n");

};

}

int main(){

int a[3][4],b[4][3];

int i,j;

for (i=0;i3;i++)for (j=0;j4;j++) a[i][j]=(i+1)*10+j;

fun(a[0][0],b[0], 3,4);

printf("\n");

for (i=0;i4;i++){

for (j=0;j3;j++) printf("%d ",b[i][j]);

printf("\n");}

return 0;

}

或这样:

void fun(int p1[3][4],int p2[4][3]){

int i,j;

for (i=0;i3;i++){

for (j=0;j4;j++) {

printf("%d ",p1[i][j]);

p2[j][i]=p1[i][j];

};

printf("\n");

};

}

调用: fun(a,b); 即可。

C语言中 指针做函数参数传递二维数组

C语言中

指针做函数参数传递二维数组有两种基本方法:

1、传递“数组指针”

#include stdio.h

void output( int (*pa)[3], int n )//这个函数只能输出n行3列的二维数组

{

int i,j;

for( i=0;in;i++ ){

for( j=0;j3;j++ )

printf("%d ", pa[i][j] );

printf("\n");

}

}

void main()

{

int a[2][3]={

{1,2,3},

{4,5,6}

};

output(a,2);

}

2、传递“指针数组”

先将二维数组的行指针存储到一个指针数组中,再将指针数组传递到子函数中去。

#include stdio.h

void output( int *pa[], int row,int col ) //这个函数更通用,但调用前,要做好准备工作。

{

int i,j;

for( i=0;irow;i++ ){

for( j=0;jcol;j++ )

printf("%d ", pa[i][j] );

printf("\n");

}

}

void main()

{

int a[2][3]={

{1,2,3},

{4,5,6}

};

int i;

int *pa[2];

for( i=0;i2;i++ )

pa[i]=a[i];

output(pa, 2, 3);

}


本文标题:c语言函数传出二维数组 c语言二维数组作为参数传入函数
浏览地址:http://scyanting.com/article/doishsi.html