C++中int转string常用方法包括:①std::to_string(C++11,简洁安全);②std::stringstream(兼容性好,适合复杂格式);③fmt库(高性能,功能强);反向转换推荐std::stoi。

在C++中,将int转换为string是常见的操作。标准库提供了多种方法来实现这种类型转换,下面介绍几种常用且推荐的方式。
使用 std::to_string(最简单)
这是C++11引入的最直接的方法,适用于基本数据类型转字符串。示例代码:
#include优点:简洁、安全、支持多种数值类型(如 long, float 等)。#include int main() { int num = 123; std::string str = std::to_string(num); std::cout << str << std::endl; // 输出: 123 return 0; }
使用 stringstream(传统方式)
通过std::stringstream可以灵活地进行类型转换,适合复杂格式化场景。
示例代码:
#include这种方式兼容老版本C++,也便于拼接多个值到一个字符串中。#include #include int main() { int num = 456; std::stringstream ss; ss << num; std::string str = ss.str(); std::cout << str << std::endl; // 输出: 456 return 0; }
使用 fmt 或第三方库(高性能可选)
如果你追求性能或更复杂的格式控制,可以使用fmt 库(如 {fmt}),它比 to_string 更快且功能更强。
示例(fmt库):
立即学习“C++免费学习笔记(深入)”;
#include虽然需要引入外部依赖,但在大型项目中常被采用。#include int main() { int num = 789; std::string str = fmt::format("{}", num); return 0; }
string 转 int 的反向操作
补充一下,如果需要将 string 转回 int,也可以用以下方法:-
std::stoi(str):C++11 提供,简单直接 -
std::stringstream配合>>操作符 -
strtol或atoi(C风格,不推荐用于新代码)
示例:
std::string str = "123"; int num = std::stoi(str);基本上就这些常用方法。日常开发中优先使用
std::to_string 和 std::stoi,清晰又安全。











