iostream实际上是一个别名,本体是basic_iostream模版类。
iostream和wiostream都是从basic_iostream模版类实例化出来的。
iostream是用于普通ANSI字符,wiostream用于宽字符(Unicode)。

iostream的定义:
typedef basic_iostream<char, char_traits<char> > iostream;
而basic_iostream则是继承自basic_istream和basic_ostream两个模版类。实例化之后成为istream或wistream以及ostream和wostream。

所以如果广义的说,iostream继承自istream和ostream也是对的。
不过本质上说实际上是basic_iostream继承自basic_istream和basic_ostream,然后用char实例化成了iostream。

==============================================

#include <sstream>

std::ostringstream oss;
oss <<"result=0"
<<"&type="
<<gm_mail.iMail_type
<<"&source="
<<gm_mail.iMail_source
<<"&status="
<<gm_mail.iStatus
<<"&time_send="
<<formatDateTimeInfo(gm_mail.iTime_send).c_str()
<<"&time_receive="
<<formatDateTimeInfo(gm_mail.iTime_received).c_str()
<<"&time_expire="
<<formatDateTimeInfo(gm_mail.iTime_expire).c_str()
<<"&send_id="
<<gm_mail.ullSender_id
<<"&send_name="
<<CGI::Encode(std::string(gm_mail.szSender_name)).c_str()
<<"&receive_id="
<<gm_mail.ullReceiver_id
<<"&receive_name="
<<CGI::Encode(std::string(gm_mail.szReceiver_name)).c_str()
<<"&titile="
<<CGI::Encode(std::string(gm_mail.szTitle)).c_str()
<<"&content="
<<CGI::Encode(std::string(gm_mail.szContent)).c_str();

std::string strReq = oss.str();

================================================

istringstream   istringstream存储字符串并且可以将内部存储的数据输出到 局部变量, 类似于 sscanf
ostringstream   将外部数据输入到ostringstream中。

#include <iostream>
#include <sstream>
#include <string>
using namespace std;

int main()
{
 istringstream iss("12 34");
 int a, b;
 iss >> a >> b; //从字符串输入流iss中读取两个数
 cout << a << " " << b << endl;

string str;
 ostringstream oss(str); //输出到string str中

oss << a << " " << b;
 cout << oss.str() << endl; //取出输出缓冲区的值
 return 0;
}

c++ iostream相关推荐

  1. linux下的qt缺少iostream,c – iostream:没有这样的文件或目录

    我在 Windows Vista上与Qt创建者合作.我正在尝试编译一个非常简单的".cpp"代码,其中包含标准c库"iostream",如下所示: #inclu ...

  2. 关于iostream的效率问题

    前言     经常有人说iostream的速度慢,IO流比stdio的慢多了.但是有人测试过的,iostream的速度是超过stdio的. 测试结果 /* C */ #include <stdi ...

  3. [C++基础]001_iostream和iostream.h的区别

    C++是在C的基础上发展的,它是兼容C的.但只是兼容,它有自己完整的一套语言规则,当然你有自己的特点,其一便是<iostream>. C++引入了名字空间namespace,它避免了变量和 ...

  4. 无法打开源文件 “iostream.h“

    改成这两行: #include<iostream> using namespace std;

  5. java iostream_【JAVA】IOStream

    前言 IOStream是InputStream和OutputStream的简称,这两个基类下面包含着很多子类,如图(output与input对应): 对于这几个子类的介绍,详情百度百科. in和out ...

  6. #include iostream与#include iostream.h的区别

    在新的C++标准中,生成新头文件的方法仅仅是将现有C++头文件名中的   .h   去掉.例如,<iostream.h> 变成了<iostream> ,<complex. ...

  7. 详解C++中经常看到的#include <iostream> using namespace std;

    在cpp文件中,我们经常看到#include <iostream> using namespace std; 这两句连用.问题来了对于从C切换到C++的程序员而言为啥iostream 不写 ...

  8. 深入tornado中的IOStream

    IOStream对tornado的高效起了很大的作用,他封装了socket的非阻塞IO的读写操作.大体上可以这么说,当连接建立后,服务端与客户端的请求响应的读写都是基于IOStream的,也就是说:I ...

  9. 提防iostream使用中的一个“陷阱”

    提防iostream使用中的一个"陷阱" 先看下面的示例代码: template < typename T > void test() {  T o;  for(T i ...

  10. C++的iostream标准库介绍+使用详解(转)

    0 为什么需要iostream 我们从一开始就一直在利用C++的输入输出在做着各种练习,输入输出是由iostream库提供的,所 以讨论此标准库是有必要的,它与C语言的 stdio库不同,它从一开始就 ...

最新文章

  1. 中国电子学会青少年编程能力等级测试图形化四级编程题:正话反说
  2. MySQL Server 5.0 和 6.0 安装指南[转]
  3. 【Python】Python数据分析来解析,2021年度最具“钱景”的大学专业
  4. 6款程序员不得不爱的bootstrap模板
  5. 都是基于.NET平台,WPF能取代Winform吗?
  6. 【做题记录】CF1428E Carrots for Rabbits—堆的妙用
  7. 【计算机网络】为什么一个路由器会有两个wifi信号
  8. 万恶的单线程!!怎样才能实现一个真正的多线程的php socket server啊!!!
  9. mysql备份单实例(一)shell
  10. web应用转化为saas多租户
  11. 监狱视频探视(会见)系统
  12. 如何使用USBASP烧写器和Atmel Studio 7.0对AVR微控制器进行编程
  13. oracle修改执行计划,调整执行计划的三种方法
  14. 数据库原理与应用实验十 数据库完整性实验
  15. excel转word_excel怎么转换成word格式手机?骨灰级方法确定不收藏吗?
  16. 大一寒假训练:集训内容考试(二)【未完待续】
  17. enumerate用法总结
  18. Python使用PIL工具、ImageDraw函数在图像上根据坐标点依次连线画矩形框,可画选择倾斜的框和折线
  19. SM4250平台typec耳机检测
  20. 指法练习软件需求说明书

热门文章

  1. 人口logistic模型公式_人口指数增长模型及Logistic模型
  2. Zigbee 协议栈
  3. 常见内网穿透工具使用总结
  4. Java程序员面试常见问题
  5. html日历修改,HTML精美日历插件
  6. 大厂Android高级多套面试专题整理集合,大厂直通车!
  7. 赢在微点答案专区英语_学乐必赢练习册30册免费领,15年级数学、语法、写作、阅读、词汇一网打尽!...
  8. Windows类标识符及其妙用
  9. 网页数据实时更新的三种简单方法
  10. 虚拟税务ukey托管服务器,税务Ukey托管来啦,给它一个家!企业开票更方便