您的位置:首页 > 编程语言 > C语言/C++

[语法]C语言中二维数组做输入参数

2013-10-31 13:47 232 查看
C语言中二维数组做输入参数时,

可以同时指定各维长度,

可以只指定第二维的长度,

不可以只指定第一维的长度,

不可以各维长度都不指定。

一句话总结:要指定至少指定第二维,都不指定是不行的。

具体栗子如下,请食用

正确:

void fun(int p[3][4]);

void fun(int p[][4]);

void fun(int *p, int len, int hgt); // p[i][j] => p + i*n + j;

void fun(int **p, int len, int hgt); // 注意!此时不可以用p[i][j]取值,而必须是*((int*)p + n*i + j) 具体原因见之后的解释

void fun(int *(p[]), int len, int hgt);

错误:

void fun(int p[][]) ;

void fun(int p[3][]) ;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: