在C/C++中,数组做函数形式参数的时候不会创建数组类型大小的空间,而是按照指针类型的大小来分配空间。
如图所示,print_array函数的形参里面int类型数组arr1并没有被分配4*7个空间大小,而是分配了4个空间大小,也就是说形参并没有按照数组类型来分配空间,而是按照指针类型来分配空间的。
结论:
1、实参把数组的内存首地址传递给形参,形参将数组退化为指针。
2、形参的arr和实参的arr1数据类型不一样。
在C/C++中,数组做函数形式参数的时候不会创建数组类型大小的空间,而是按照指针类型的大小来分配空间。
如图所示,print_array函数的形参里面int类型数组arr1并没有被分配4*7个空间大小,而是分配了4个空间大小,也就是说形参并没有按照数组类型来分配空间,而是按照指针类型来分配空间的。
结论:
1、实参把数组的内存首地址传递给形参,形参将数组退化为指针。
2、形参的arr和实参的arr1数据类型不一样。