1.数组作为函数参数
将数组作为函数参数传递,并没有将a的所有元素传过来,只是把a的首元素地址传过来(高效)
需要传递两个参数:数组名(指针,首元素地址) 数组元素个数
2.指针传参
可以在被调函数修改主调函数的值,需要传递地址。
数组传递的是a[0]的地址,即指针传参,所以可以在被调函数中修改主函数的值(数组传参不是拷贝数组,而是传递数组首元素地址,传递效率高于值传递)
3.二阶数组在封装函数时,行数不能通过sizeof(a)/ sizeof(a(0))算出来,只能由主调函数来提供,即需要在形参中定义一个变量,eg :int libary(int a[ ][ 4],int rows)