200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > C语言二维数组作为形参传递

C语言二维数组作为形参传递

时间:2024-06-18 12:01:40

相关推荐

C语言二维数组作为形参传递

C语言中,把二维数组作为形参进行传递,有以下几种形式:

case 1: void output_printf(int **a,int row,int col)

限制条件:形参二重指针,实参也要求二重指针,用于二维数组动态分配

case 2: void output_printf(int a[4][6],int row,int col)

限制条件: 显示的指定行列

case 3: void output_printf(int a[][6],int row,int col)

限制条件:显示指定列

case 4 :void output_printf(int (*a)[6],int row,int col)

限制条件:定义一维指针数组,显示指定列

case 5 :void output_printf(int (*a[])[6],int row,int col)

限制条件:显示指定列,不常用

实例:

#include <stdio.h>

#include <stdlib.h>

void output_printf(int **a,int row,int col)

{

printf("two array debug,rwo:%d\tcol:%d\n",row,col);

int i = 0,j = 0;

for(i = 0;i < row; i++){

for(j = 0; j < col; j++){

printf("%0x\t",a[i][j]);

}

printf("\n");

}

printf("\n");

}

int main(int argc,char **argv)

{

int row = 0,col = 0;

printf("input row\n");

scanf("%d",&row);

printf("intput col\n");

scanf("%d",&col);

int **p = (int *)malloc(sizeof(int *) * row);

int i = 0;

for(i = 0 ;i < row; i++){

p[i] = (int)malloc(sizeof(int) * col);

}

output_printf(p,row,col); //实参双重指针传递

return 0;

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。