C ++将一个int转换为字符串
C++ Casting out a int into string
我打算更改 x[]
数组中的元素,以排除数字 1、2、3、4。但是一旦我执行了代码。它将显示此错误消息。
error: no matching function for call to
std::__cxx11::basic_string<char>::basic_string(int&)
任何人都可以帮助我做任何事情来改变我的内部元素而不是使用 for 循环吗?我可以一个一个地改变它,我想一起改变它以防万一节省时间和编写的代码量。
#include <iostream>
using namespace std;
string x[] = {"X", "O", "X", "O"};
int main()
{
cout << x[0] + x[1] + x[2] + x[3] << endl;
for (int i = 0; i < 4; i++){
x[i] = (string)i;
}
cout << x[0] + x[1] + x[2] + x[3] << endl;
return 0;
}
错误原因如下:
x[i] = (string)i;
阅读here:如何使用函数std::to_string
将数字转换为字符串
std::to_string(i);
#include <iostream>
std::string x[] = {"X", "O", "X", "O"};
int main()
{
std::cout << "Before: " << x[0] + x[1] + x[2] + x[3] << std::endl;
for (int i = 0; i < 4; i++)
{
x[i] = std::to_string(i);
}
std::cout << "after: " << x[0] + x[1] + x[2] + x[3] << std::endl;
return 0;
}
我打算更改 x[]
数组中的元素,以排除数字 1、2、3、4。但是一旦我执行了代码。它将显示此错误消息。
error: no matching function for call to
std::__cxx11::basic_string<char>::basic_string(int&)
任何人都可以帮助我做任何事情来改变我的内部元素而不是使用 for 循环吗?我可以一个一个地改变它,我想一起改变它以防万一节省时间和编写的代码量。
#include <iostream>
using namespace std;
string x[] = {"X", "O", "X", "O"};
int main()
{
cout << x[0] + x[1] + x[2] + x[3] << endl;
for (int i = 0; i < 4; i++){
x[i] = (string)i;
}
cout << x[0] + x[1] + x[2] + x[3] << endl;
return 0;
}
错误原因如下:
x[i] = (string)i;
阅读here:如何使用函数std::to_string
将数字转换为字符串
std::to_string(i);
#include <iostream>
std::string x[] = {"X", "O", "X", "O"};
int main()
{
std::cout << "Before: " << x[0] + x[1] + x[2] + x[3] << std::endl;
for (int i = 0; i < 4; i++)
{
x[i] = std::to_string(i);
}
std::cout << "after: " << x[0] + x[1] + x[2] + x[3] << std::endl;
return 0;
}