C++中的stringstream是一个用于处理字符串的流对象。它允许将字符串转换为不同类型的数据,并且可以从不同类型的数据中提取字符串。
以下是stringstream的一些常见用法:
1. 字符串转换为其他类型的数据:
```cpp
#include
#include
#include
int main() {
std::string str = "123";
int num;
std::stringstream ss(str);
ss >> num;
std::cout << num << std::endl; // 输出:123
return 0;
}
```
2. 将不同类型的数据转换为字符串:
```cpp
#include
#include
#include
int main() {
int num = 123;
std::stringstream ss;
ss << num;
std::string str = ss.str();
std::cout << str << std::endl; // 输出:123
return 0;
}
```
3. 提取字符串中的各个部分:
```cpp
#include
#include
#include
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是基于流的操作,因此需要包含头文件`