在函数调用中,引用调用方式将(请作答此空)。下面所定义的函数foo为值调用方式,

admin2022-08-02  38

问题 在函数调用中,引用调用方式将(请作答此空)。下面所定义的函数foo为值调用方式,函数g( )的第一个参数采用值调用、第二个参数采用引用调用方式传递数据。若有表达式y=foo(2),则foo调用执行之后,y被赋值为( )。A.实参的值传给形参B.形参的值传给实参C.实参的地址传给形参D.形参的地址传给实参

选项 A.实参的值传给形参
B.形参的值传给实参
C.实参的地址传给形参
D.形参的地址传给实参

答案 C

解析 传值调用:形参取的是实参的值,形参的改变不会导致调用点所传的实参的值发生改变。引用(传址)调用:形参取的是实参的地址,即相当于实参存储单元的地址引用,因此其值的改变同时就改变了实参的值。在本题中,首先在foo()函数中,传入给x的值为2,然后b的值为1,接下来调用g()函数,x的值为2,所以g()函数b的值为2(值传递),b的值为1,所以g()函数x的值为1(地址传递,故x的值变化,会引起foo()函数中b值的变化)。经过g()函数的一系列语句,b=3,x=5。则foo()中b值变成5,最终foo()函数的返回值为5+2=7。
转载请注明原文地址:https://tihaiku.com/congyezige/2415808.html

最新回复(0)