一、问题
⼦函数执⾏时,整个多维数组是由主函数决定的,这时就要把多维数组的数组名作为函数参数传递给⼦函数。那么在C程序中,怎样将多维数组名作函数参数进⾏传递?
二、解答
以⼆维数组为例,其格式如下。 形参定义:
fun( Type array[][N])
{
}
或
fun(Type (*array) [N])
{
}
实参定义:
main()
{
Type a[N];
...
fun(a)
...
}
注意实际参数只写数组名,形式参数可以是数组形式,也可以是指针形式。不管是哪种形式,原⼆维数组的第⼀维都可以不声明⼤⼩,但其他维则必须声明。多维数组与此类似,即只有第⼀维可以省略⼤⼩。
三、总结
多维数组的数组名作函数的参数,可以由⼆维数组类推⽽得出。