📜  C ++ |参考书目问题4

📅  最后修改于: 2021-06-01 03:10:12             🧑  作者: Mango

预测以下C++程序的输出。

#include
using namespace std;
  
int &fun()
{
    static int x = 10;
    return x;
}
int main()
{
    fun() = 30;
    cout << fun();
    return 0;
}

(A)编译器错误:函数不能用作左值
(B) 10
(C) 30答案: (C)
说明:当一个函数通过引用返回时,它可以用作左值。由于x是静态变量,因此它在函数调用和初始化行“ static int x = 10;”之间共享。只执行一次。
函数调用fun()= 30,将x修改为30。下一个调用“ cout << fun()”返回修改后的值。
这个问题的测验

想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。