【发布时间】:2024-01-21 20:30:01
【问题描述】:
这是我的程序!我想知道这种输出背后的原因。
#include <iostream>
using namespace std;
class A{
public:
void fun(int i){
cout<<"Hello World" + i<<endl;
}
};
int main()
{
A obj1;
obj1.fun(2);
return 0;
}
预期输出: 你好世界2
实际输出: 你的世界
PS:要打印“HelloWorld2”,我也可以编码cout
【问题讨论】:
-
预期输出:Hello World2 -- 您正在寻找 Java,而不是 C++。 -- 我也可以编写 cout -- 这是在 C++ 中执行此操作的正确方法。
-
从 C++14 开始,您可以使用
"Hello World"s + i。在 C++11 中,可以使用 user-defined literal 完成类似的事情 -
@LưuVĩnhPhúc 应该是
"Hello Worls"s + std::to_string(i)而不是 UB。