C++ int转string方法详解
C++中int转string常用方法包括:①std::to_string(C++11推荐)直接转换;②std::stringstream灵活格式化;③sprintf(需防溢出,较少用);反向可用std::stoi(注意异常处理)。
C++中int转string常用方法包括:①std::to_string(C++11推荐)直接转换;②std::stringstream灵活格式化;③sprintf(需防溢出,较少用);反向可用std::stoi(注意异常处理)。

在C++中,将int转换为string是常见操作。有多种方法可以实现这一转换,每种方式适用于不同场景。以下是几种常用且高效的转换技巧。
使用 to_string 函数(推荐)
C++11 起提供了std::to_string函数,可以直接将整数转换为字符串,简单直观。
#include
#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
#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;
}
也可简写为:
std::string str = ss.str(); 来获取结果。
使用 C 风格 sprintf(较少推荐)
借助sprintf或snprintf将数字格式化到字符数组,再转为std::string。适合与C语言混合编程的场景。
#include
#include
#include
int main() {
int num = 789;
char buffer[20];
snprintf(buffer, sizeof(buffer), "%d", num);
std::string str(buffer);
std::cout << str << std::endl; // 输出: 789
return 0;
}
注意缓冲区大小,避免溢出。现代C++中建议优先使用前两种方法。
string 转 int 的反向转换
补充一下,如果需要将string转回int,可使用std::stoi函数。
#include
#include
int main() {
std::string str = "100";
int num = std::stoi(str);
std::cout << num + 1 << std::endl; // 输出: 101
return 0;
}
该函数会抛出异常(如std::invalid_argument)当字符串无法转换,使用时建议加异常处理。
基本上就这些。日常开发中,std::to_string和std::stoi已能满足绝大多数需求,简洁高效。不复杂但容易忽略细节,比如异常安全和缓冲区长度控制。根据项目环境选择合适方式即可。
Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
















