std::to_string
时间: 2023-07-08 18:43:13 浏览: 79
是 C++ 中的一个函数,用于将各种数据类型转换成字符串类型。它的函数原型为:
```c++
string to_string(int val);
string to_string(long val);
string to_string(long long val);
string to_string(unsigned val);
string to_string(unsigned long val);
string to_string(unsigned long long val);
string to_string(float val);
string to_string(double val);
string to_string(long double val);
```
你可以使用该函数将整数、浮点数等类型转换成字符串,方便输出或者其他操作。例如:
```c++
int num = 123;
string str = to_string(num);
```
这样就将整数 123 转换成了字符串类型,并存储在了 str 变量中。
相关问题
std::basic_string可以使用std::to_string转换成std::string吗
`std::basic_string<CharT>` 类型(例如 `std::basic_string<char>` 或其他内置字符类型),本身是可以直接转换为 `std::string` 的,因为 `std::string` 可以视为 `std::basic_string<char>` 的特例。你可以通过 `std::string` 的构造函数将 `std::basic_string<CharT>` 的内容复制到一个新的 `std::string` 中。比如:
```cpp
std::basic_string<char> str = "Hello";
std::string strAsStdString = str; // 直接转换
```
当然,如果 `std::basic_string<CharT>` 实际上存储的是非ASCII字符,而你需要将其转换为 `std::string`,那么 `std::to_string` 就不适用了,因为它只针对 `int`、`double` 等数值类型。在这种情况下,你可以先将其内容转换为 `std::wstring`,然后再转为 `std::string`,利用 `std::wstring_convert` 或者 `std::codecvt_utf8_utf16`。
std::string和std::to_string()
std::string是C++标准库中的一个类,用于表示字符串。它提供了各种操作字符串的方法和功能。
而std::to_string()是一个函数模板,用于将不同类型的数据转换为字符串。它接受一个参数,并返回该参数的字符串表示形式。
例如,你可以使用std::to_string()将整数转换为字符串,如下所示:
```cpp
int num = 42;
std::string str = std::to_string(num);
```
在上面的例子中,变量num被转换为字符串"42"并赋值给变量str。
需要注意的是,std::to_string()只能用于支持该函数的特定类型,如整数、浮点数等。如果你想将自定义类型转换为字符串,你可能需要自己实现转换函数或运算符重载。
阅读全文