C语言
-
数组元素作为函数实参、
- a[5]——[5]便是数组元素
-
数组名最为函数实参、
-
a[5]——a 便是数组名、数组名代表的是数组的首地址、如果数组名是实参那么函数中的形参也应该使用数组名、或者数组指针、
-
数组名作为函数参数时便不是“值传递”不是单项传递、而是传递地址给了形参数组、
-
结果时两个数组共占用一个内存、传递变成地址传递、不在时单项传递、
-
void hanshuming(int ba[5]) { ba[3] = 19; ba[4] = 29; ba[1] = 99; return; } int main() { int a[5]; a[0] = 39; a[1] = 29; a[2] = 39; a[3] = 49; a[4] = 59; hanshuming(a); for (int i = 0 ; i < 5; i++) { printf("a[%d] =%d\n", i, a[i]); } }
-
形参数组大小可以不指定、即使指定也没用、因为他是直接将实参的数组首地址给了形参、等于是实参覆盖了形参、
-
但是实参和形参的类别要一致、
-
实参为数组名、则形参必须为数组名、
-
-
用多为数组作为函数实参、
1. 形参数组定义可以指定每一维的大小、可以省略第一维大小、但不能省略第二维大小、
-
、函数中形参和实参尽量一致、以防出错、