浅谈sstream头文件
在使用istreamstring,ostreamstring,streamstring的时候要用到sstream这个头文件。
在刚开始使用的时候很蒙,完全不会用,现在来谈一下这个很棒的头文件。
sstream这是一个字符串流,经常用于格式转换,包含了istream,ostream这些个函数,从字面就可以看出,istream是输入,ostream是输出。
- #include <iostream>
- #include <string>
- #include <sstream>
- using namespace std;
- int main()
- {
- int a, b;
- string Str1, Str2;
- string Input = "abc 123 bcd 456 sss 999";
- //ostringstream 对象用来进行格式化的输出,可以方便的将各种类型转换为string类型
- //ostringstream 只支持 << 操作符
- //格式化输出
- ostringstream oss;
- oss << 3.14;
- oss << " ";
- oss << 55555555;
- oss << endl;
- cout << oss.str();
- //double型转化为字符串
- oss.str("");//每次使用前清空,oss.clear() 并不能清空内存
- oss << 3.1234234234;
- Str2 = oss.str();
- cout << Str2 << endl;
- //int型转化为字符串
- oss.str("");
- oss << 1234567;
- Str2 = oss.str();
- cout << Str2 << endl;
- //istringstream 对象用来把一个已定字符串中的以空格隔开的内容提取出来
- //istringstream 只支持 >> 操作符
- istringstream iss(Input);//通过构造函数对istringstream类进行赋值,可以将一个字符串变量的值传递给istringstream对象
- //若传入的字符串是常量,也可以进行如下赋值
- //iss.str("ccc 555 aaa 333");
- //扩展,iss对象支持对C语言流的操作,所以也可以进行如下的赋值
- //iss.str(Input.c_str());
- while(iss >> Str1 >> a)
- {
- cout << Str1 << " " << a << endl;
- }
- //stringstream类
- //该类就是上述istringstream和ostringstream类的综合,支持<<, >>操作符,可以进行字符串到其它类型的快速转换
- stringstream ss;
- ss << Input;
- while(ss >> Str1 >> a)
- {
- cout << Str1 << " " << a << endl;
- }
- //总结这几个类istringstream, ostringstream, stringstream, 包含在<sstream>文件里
- //输入方式:
- //1.构造函数。iss, oss, ss 都支持。eg. istreamstring iss(Input), ostreamstring(Input), stringstream ss(Input)
- //2.<< 操作符。oss, ss 支持。 oss << Input, ss << Input;
- //3. .Str()函数,提供C中的字符串头指针,或者匿名内存首地址
- // eg. iss.str(Input.c_str()), iss.str("abc 123 345")
- // oss.str(Input.c_str()), oss.str("abc 123 345")
- // ss.str(Input.c_str()), ss.str("abc 123 345")
- //输出方式:
- //1. 通过.str()得到一份拷贝
- //eg. Str1 = iss.str(), Str1 = oss.str(), Str1 = ss.str();
- // 显然,这个也提供C语言的接口
- // printf("%s", iss.str().c_str()), printf("%s", oss.str().c_str()), printf("%s", ss.str().c_str())
- //2. >>操作符, iss和ss支持该操作
- //每次不同的使用时刻必须要清空
- //ss.str(""), iss.str(""), oss.str(""),暂时没有发现其它的清空方法
- //最大的用处
- //输入string类型,可以通过iss 或 ss 类提取出来,功能类似于C语言中的sscanf()函数, 在TC中比较常见
- //提供字符串和各种类型之间的转换
- return 0;
- }
浅谈sstream头文件相关推荐
- 第二篇:浅谈自定义头文件可能导致的重定义问题
前言 总看到一些地方说定义语句别放在头文件中,因为会引起重定义.但具体编程中,却发现有些定义又不得不放在头文件中. 这可如何是好?基于对这个问题的思考,有了这篇随笔. 重定义产生的情况 情况一:多个源 ...
- file相对路径java_浅谈java 中文件的读取File、以及相对路径的问题
一.对于java项目中文件的读取 1.使用system 或是 系统的properties对象 ①直接是使用 string relativelypath=system.getproperty(" ...
- python语言源程序文件类型_浅谈Python的文件类型
Python的文件类型主要分为3种:源代码(source file).字节码(byte-code file).优化的字节码(optimized file).这些代码都可以直接运行,不需要编译或者连接. ...
- 神奇的sstream头文件(整型与字符串自由转换)
疫情当前,"串门就是互相残杀,聚会就是自寻短见",所以,让我们一起快乐的敲代码吧! 这次分享的知识是:如何让整型.实型.字符型自由转换. 直接上代码: //#include< ...
- oracle外部结合,浅谈Oracle外部文件
所谓Oracle外部文件外部文件,意味着这些文件从严格意义上来讲并不属于Oracle数据库的一部分.Oracle外部文件也就是属Oracle物理存储结构的一部分,属于外面嵌入到Oracle数据库内部的 ...
- 浅谈Robots.txt文件给网站带来的好处
作为一名web优化职员,我们都很清楚robots.txt文件对我们网站的需要性,Robots.txt文件只不过一个纯文本文件,它就像web地图异样,给搜寻引擎指明线路,当蜘蛛搜索一个站点时,它起首蒲伏 ...
- 浅谈socket传输文件速率优化
socket传输文件速率优化 前言 最近有个需求,就是在需要提升换机助手的传输文件的传输速度.先来看看什么是换机助手. 一般厂家的换机助手都长这个样子,就是将旧手机的一些数据拷贝到新手机上去.数据一般 ...
- linux 目录md5校验,【我的Linux,我做主!】浅谈MD5校验文件完整一致性
目录: (一)MD5介绍 (二)md5sum命令 (三)实战演练 (一)MD5介绍 (1.1)MD5即Message-Digest Algorithm 5(信息-摘要算法 第5版),用于确保信息传输完 ...
- 浅谈C/C++文件流的操作
转自:微点阅读 https://www.weidianyuedu.com/content/3417507553653.html C/C++文件流 文件流是以外存文件为输入/输出对象的数据流.输出文件 ...
最新文章
- 线程池每次用都创建吗_跳槽涨薪季面试题之多线程(三)
- Altiris 7.1 远程
- Java中的代理设计模式
- javascript 反斜杠\
- hiveserver2启动不起来_汽车一键启动只能用来打火吗 车主必须知道的几个“隐藏”技巧!...
- 中职计算机基础课教学策略研究,中职计算机基础知识教学方法及教学策略研究.doc...
- 【渝粤教育】国家开放大学2018年春季 0195-22T机械设计基础 参考试题
- 唐努乌梁海问题的由来
- 0. Unix / Linux操作系统介绍
- 51单片机流水灯用c语言,51单片机流水灯C语言源代码.doc
- 最近发现的一个c# winform的一个很好用很强大的excel控件 reogrid控件
- 3分钟打动投资人:商业计划书篇
- mysql.sock连接_解决不能通过mysql.sock连接MySQL问题的办法
- Java多线程系列--“JUC集合”04之 ConcurrentHashMap
- 计算机上无线网络开关在哪里,联想笔记本无线网络开关,教您联想笔记本无线网络开关在哪...
- OSChina 初十乱弹 ——你明白好多道理 还是过不好这一生
- 从零开始学习菜鸟晋级黑客之黑客之“名词介绍”
- 为什么要给网桥分配IP地址
- 我们眼中的人那是极少数,我们才是大多数人
- 光头老法师手持尼康却能玩出佳能的效果
热门文章
- Android实现扫一扫识别图像数字(使用训练的库拍照查看扫描结果)(下)
- Maplab系列15:Inverted File
- 互联网晚报 | 10月24日 星期日 | 华为鸿蒙生态建设投入已超500亿;瑞幸门店端扭亏为盈;文旅部要求暂停经营旅游专列业务...
- 学生成绩管理系统E-R图
- 关于数据治理的读书笔记 - 什么是组织机制?
- hibernate Criteria setProjection
- 【测试】抓包获取浏览器UA,并使用Chrome 调试工具模拟手机
- 未能找到下列包文件: C:\Users\Administrator\Desktop\DotNetFX40\dotNetFx40LP_Full_x86_x64zh-Hans.exe
- 手机开发者选项中的调试模式
- poj求排列的逆序数