参数的传值方式与传地址方式

来源:互联网 发布:java商场系统 jeshop 编辑:程序博客网 时间:2024/06/06 14:00

*函数调用时,实参向形参传值,根据值的不同,分为“传值方式”与“传地址方式”。*

1. 比较参数的传值方式和传地址方式

这里写图片描述

2. 传地址方式的应用场合

(1)如果子函数调用后,有多个数值需要带回主调函数,就必须使用参数的传地址方式。
(2)如果子函数调用过程中,需要访问并修改主调函数中某些变量的值,就必须使用参数的传地址方式,此时应将主调函数中需要被修改的变量地址作为实参。

3. 一维数组与函数
(1)如果是一维数组的元素作为函数实参,属于传值方式,在子函数里仅能引用数组元素的值,而不能对值进行修改。
(2)如果是一维数组名作为函数实参,属于传地址方式,子函数的形参指针指向数组的首地址,在子函数里可以利用形参指针引用数组元素并修改数组元素的值。
(3)如果是一维数组某个元素的地址作为实参,也属于传地址方式,子函数的形参指针指向数组中的钙元素,在子函数里可以利用形参指针引用数组元素并修改数组元素的值。