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; // 输出:123return 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; // 输出:123return 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; // 输出:123return 0;}需要注意的是,stringstream是基于流的操作,因此需要包含头文件<sstream>。另外,使用stringstream时要确保输入字符串的格式正确,否则可能会导致错误的结果。

