std::stringstream
是 C++ 标准库中的一个类,它位于 <sstream>
头文件中。std::stringstream
是一个流类,用于在内存中读写字符串。它可以方便地将其他数据类型转换为字符串,或者将字符串解析为其他数据类型。
std::stringstream
的主要作用如下:
<<
运算符将多个数据类型拼接成一个字符串。>>
运算符从字符串中提取数据,并将其转换为其他数据类型。setf
、setprecision
等函数设置输出格式。下面是一个简单的示例,展示了如何使用 std::stringstream
:
#include<iostream>
#include <sstream>
#include<string>
int main() {
std::stringstream ss;
std::string str;
int num;
// 将整数和字符串拼接到 stringstream 中
ss << "The answer is: " << 42;
// 从 stringstream 中提取字符串
std::getline(ss, str);
std::cout<< str<< std::endl;
// 清空 stringstream 并重新使用
ss.str("");
ss.clear();
// 将字符串和浮点数拼接到 stringstream 中
ss << "Pi is approximately: " << 3.14159;
// 从 stringstream 中提取字符串
std::getline(ss, str);
std::cout<< str<< std::endl;
// 将字符串解析为整数
ss.str("12345");
ss >> num;
std::cout << "The number is: "<< num<< std::endl;
return 0;
}
这个示例展示了如何使用 std::stringstream
进行字符串拼接、解析和类型转换。