C++中的 istringstream 的用法

来源:互联网 发布:php 编译mysql 编辑:程序博客网 时间:2024/06/05 23:46

今天在看别人的C++程序源码的时候,看到了一个比较有用的C++的输入输出控制类。因为之前没有使用过,故特地学习了一下,在此总结。

程序源码中使用了这样的语句:

ifstream fin(fname);int a,b,c;string s;getline(fin, s);istringstream ss(s);ss >> a>>b>>c;
将读入的一行中的三个整数存储到了a, b, c中。

查了一下相关文档:C++引入了ostringstream、istringstream、stringstream这三个类,要使用他们创建对象就必须包含<sstream>这个头文件。

istringstream类用于执行C++风格的串流的输入操作。

ostringstream类用于执行C风格的串流的输出操作。

strstream类同时可以支持C风格的串流的输入输出操作。

istringstream的构造函数原形如下:

istringstream::istringstream(string str);

它的作用是从string对象str中读取字符。

#include<iostream>  #include<sstream>        //istringstream 必须包含这个头文件#include<string>  using namespace std;  int main()  {      string str="i am a boy";      istringstream is(str);      string s;      while(is>>s)      {          cout<<s<<endl;      }        } 

输出是:

i

am

a

boy

0 0
原创粉丝点击