✏️ 纠错
第 243 题 / 共 301 题
第2题 下面C++代码的输出是15。
void foo(int x) {
    x += 5;
}
int main() {
    int a = 10;
    foo(a);
    cout << a << endl;
}
📝 题目解析

【考纲知识点】C++函数参数传递方式(值传递vs引用传递)

【正确答案】×

【题目解析】

参数传递方式:

C++中,函数参数默认采用值传递,即创建实参的副本。

在foo函数中,形参x是实参a的副本,修改x不会影响原始变量a。

代码执行流程:

main函数中初始化a为10。

调用foo(a)时,将a的值复制给x。

foo内部将x增加到15,但此修改仅作用于副本。

foo返回后,a的值仍为10。

输出验证:

cout << a << endl; 输出10,而非15。