问一个c++的问题:为什么第三次输出的结果不受第二次输出的结果,也就是调用函数的影响呢?

2025-04-15 08:44:36
推荐回答(3个)
回答1:

因为 Changeage 函数只是把age的值传进去了,在函数体内修改该变量的值不能带回到函数外。
如果要修改值的话,c++可以用参数引用,也就是说函数头为
void Changeage(int &age,int newage)
或者像C语言一样传指针进去也行。

回答2:

调用Changeage时,只是传递值,并不是变量本身,在Changeage再怎么改变,也不会影响之前的变量

回答3:

因为你在main函数的age是实参,你传递到Changeage里之后,会吧值复制给形参,两者并不是同一数据