函数调用时,基本的参数传递方式有传值与传地址两种,(20) 。
(20) A、在传值方式下,形参将值传给实参
B、在传值方式下,实参不能是数组元素
C、在传地址方式下,形参和实参间可以实现数据的双向传递
D、在传地址方式下,实参可以是任意的变量和表达式
选项A错:函数调用时是用实参初始化形参。
选项B错:诚然,在传值方式下实参不能是数组,但并非不能是数组元素(要知道数组元素可以是一个一个的int哟,难道一个一个的int也不能作为实参么?),如果把数组拆成单个的数组元素并作为实参,一个一个的传递还是可以的,只是这种方法效率太低了。
选项C对。在传地址方式下,如引用形参,初始化形参的时候实际上是将实参的实际修改控制权传递给了函数,此时函数对于形参的加工处理其实就是对实参的加工处理,只是处理的是实参的另一个别名罢了,处理完成以后,形参值变了,实参值也变了,因此可以理解成形参与实参值实现了双向传递。
选项D错:在传地址方式下,实参不可以是表达式。