如何将整数转换为 std::string
时间: 2024-09-18 14:10:25 浏览: 34
在 C++ 中,要将整数转换为 `std::string`,你可以使用以下几种方法:
1. **使用 `std::to_string()` 函数**:
这是最常用的方式,适用于 C++11 及以后的标准库。对于 `int64_t` 或其他内置整数类型,可以直接调用此函数:
```cpp
int64_t num = 1234567890;
std::string str_num = std::to_string(num);
```
2. **使用 `stringstream` (C++11以前)**:
如果你使用的 C++ 版本较旧,没有 `std::to_string`,可以使用 `std::stringstream`:
```cpp
#include <sstream>
int64_t num = 1234567890;
std::stringstream ss;
ss << num;
std::string str_num = ss.str();
```
3. **手动转换字符拼接**:
最古老的方法是将数字逐个字符地连接到一个新的字符串,但这相对复杂,不推荐使用:
```cpp
int64_t num = 1234567890;
std::string str_num;
while (num > 0) {
str_num = std::to_chars(&str_num, &str_num + str_num.size(), num % 10);
num /= 10;
}
if (str_num.back() == '0') {
str_num.pop_back(); // 去掉末尾多余的 '0'
}
```
这些方法都会生成一个包含指定整数值的字符串表示。
阅读全文