istringstream、ostringstream、stringstream

来源:互联网 发布:人工智能生活中的应用 编辑:程序博客网 时间:2024/06/04 00:24

C++引入了ostringstream、istringstream、stringstream这三个类,要使用他们创建对象就必须包含sstream.h头文件。

istringstream类用于执行C++风格的串流的输入操作。
ostringstream类用于执行C风格的串流的输出操作。
strstream类同时可以支持C风格的串流的输入输出操作。

#include<iostream>#include <sstream>using namespace std;int main()   { //类型转换    istringstream iss("hello! 2015");//流的输入操作。。将一个string按照不同类型输出    char ch1[20];int a1;    iss>>ch1>>a1;//将字符串"hello! 2015"输入到ch1和a1中,空格会成为字符串参数的内部分界    cout<<ch1<<endl;    cout<<a1<<endl<<endl<<endl;    ostringstream oss("hello! 2015");//流的输出操作。。向一个string插入字符    oss.put('h');oss.put('i');//put(ch):ch自能为字符,如果ch为数字,则自动将该数字视为ASCII骂,然后转换为相应的字符     oss<<100;oss.put(1);oss<<"hi";    //如果构造的时候设置了字符串参数,那么增长操作的时候不会从结尾开始增加,而是修改原有数据,超出的部分增长    string str1 = oss.str();    cout<<str1<<endl<<endl<<endl;    stringstream  ss("hello! 2015");//流的输入输出操作。。先输出后输入    ss.put('h');ss.put('i');    ss<<"2015";    string str2 = ss.str();    cout<<str2<<endl;    char ch2[20];int a2;    ss>>ch2>>a2;    cout<<ch2<<endl;    cout<<a2<<endl<<endl<<endl;}

这里写图片描述

0 0