在下面的程序代码中,a是全局变量。若以引用调用(call by referenc

练习题库2022-08-02  60

问题 在下面的程序代码中,a是全局变量。若以引用调用(call by reference)方式调用函数f,则输出结果为 () ;若以值调用(call by value)方式调用函数f,输出结果为() 。A.10B.40C.36D.72

选项 A.10
B.40
C.36
D.72

答案 D

解析 本题考查函数调用时的参数传递基本知识。    传值调用是指将实际参数的值传递给形式参数,实际参数与形式参数对应的存储单元是相互独立的,实际参数仅为形式参数提供初始值,在被调用函数中对形式参数的修改与实际参数没有关系。题目中,实际参数a的值为5,传值调用时将5传递给形式参数x,a是全局变量,所以函数f中对a和x的引用是两个对象,如下图(a)所示,函数的返回值为36;引用调用时形式参数和实际参数对应的存储单元都是实参的单元,因此函数中对a和x的引用是同一个对象,如下图(b)所示,函数的返回值为64。
转载请注明原文地址:https://tihaiku.com/congyezige/2428089.html

最新回复(0)