gpt4 book ai didi

c++ - 通过引用。 C++ 中的函数。输出流

转载 作者:太空宇宙 更新时间:2023-11-04 16:09:00 25 4
gpt4 key购买 nike

你能解释一下为什么我会得到这个输出吗?我希望看到:
2 4 2
3 9 9
相反我有:
2 4 2
9 9 3

#include <iostream>

using namespace std;

int sq1(int);
int sq2(int&);

int main() {
int x = 2, y = 3;

cout<<x<<" "<<sq1(x)<<" "<<x;
cout<<endl;
cout<<y<<" "<<sq2(y)<<" "<<y;

return 0;
}

int sq1(int n) {
n *= n;
return n;
}

int sq2(int &n) {
n *= n;
return n;
}

最佳答案

行内

cout<<y<<"  "<<sq2(y)<<"  "<<y;

您正在修改 y。不保证每个表达式的计算顺序。

相关:function parameter evaluation orderWhat is the correct answer for cout << c++ << c;?

关于c++ - 通过引用。 C++ 中的函数。输出流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30883721/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com