有如下函数定义: void func(int a,int&b){a++;b++;} 若执行代码段: int x=0,y=1; func(x,y); 则变量x和y的值分别是( )。

admin2020-07-30  31

问题 有如下函数定义:
    void func(int a,int&b){a++;b++;}
    若执行代码段:
    int x=0,y=1;
    func(x,y);
    则变量x和y的值分别是(    )。

选项 A、0和1
B、1和1
C、0和2
D、1和2

答案C

解析 此题考查的是函数参数的传递方式。此题中形参a是普通参数,即传值调用,函数中对a增l不会影响到实参x的值;形参b是传址调用,函数中对b增1同时会改变实参v的值。故最终结果是0和2。
转载请注明原文地址:https://kaotiyun.com/show/lDyp777K
0

最新回复(0)