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时要确保输入字符串的格式正确,否则可能会导致错误的结果。