C语言中,用多维数组名做函数参数,对形参数组定义时,为什么可以省略一维的大小?

来源:百度知道 编辑:UC知道 时间:2024/06/29 01:28:31
C语言中,用多维数组名做函数参数,对形参数组定义时,为什么可以省略一维的大小?而不可以省略二维以及其他高维的大小呢???

只能省略1维!

如果省略2维的话,那么,对于a[3][4]和a[4][3]就搞混了!

也就无法确定元素a[1][1]的位置了,因为不知道列宽!

另外,数组做参数,实际上是弱化成指针的

所以可以省略1维的大小!~

多维数组名实际上是一个指向数组的指针,我们知道指针的维数可以省略,而数组不行,所以不能省略形参的二维大小。

只能省略1维!