istringstream类是C++标准库中的一个类,用于从字符串中提取数据。它继承自istream类,可以像cin一样从字符串中读取数据。
其主要作用是将字符串转换为其他基本数据类型。我们可以使用>>运算符从字符串中提取数据,并将其存储到相应的变量中。这样可以方便地将字符串中的数据转换为其他类型,如整数、浮点数等。同时,istringstream类还可以处理字符串中的空格和换行符等特殊字符。
示例代码:
#include#include int main() { std::string str = "123 4.56"; std::istringstream iss(str); int num1; float num2; iss >> num1 >> num2; std::cout << "num1: " << num1 << std::endl; std::cout << "num2: " << num2 << std::endl; return 0; }
输出:
num1: 123 num2: 4.56
在该示例中,我们创建了一个字符串流istringstream对象iss,并将字符串"123 4.56"传递给它。然后,我们使用>>运算符从iss中提取数据,并将其分别存储到num1和num2变量中。最终,输出了num1和num2的值。
总之,istringstream类主要用于从字符串中提取数据,并将其转换为其他基本数据类型。它可以方便地处理字符串中的数据,并进行类型转换。