阅读量:1
C++中的stringstream是一个用于处理字符串的流对象。它允许将字符串转换为不同类型的数据,并且可以从不同类型的数据中提取字符串。
以下是stringstream的一些常见用法:
- 字符串转换为其他类型的数据:
#include <sstream> #include <iostream> #include <string> int main() { std::string str = "123"; int num; std::stringstream ss(str); ss >> num; std::cout << num << std::endl; // 输出:123 return 0; }
- 将不同类型的数据转换为字符串:
#include <sstream> #include <iostream> #include <string> int main() { int num = 123; std::stringstream ss; ss << num; std::string str = ss.str(); std::cout << str << std::endl; // 输出:123 return 0; }
- 提取字符串中的各个部分:
#include <sstream> #include <iostream> #include <string> int main() { std::string str = "Hello, World! 123"; std::string word; int num; std::stringstream ss(str); ss >> word >> word >> num; std::cout << word << std::endl; // 输出:World! std::cout << num << std::endl; // 输出:123 return 0; }
需要注意的是,stringstream是基于流的操作,因此需要包含头文件<sstream>
。另外,使用stringstream时要确保输入字符串的格式正确,否则可能会导致错误的结果。