C++ primer plus 第17 章 输入、输出和文件:文件输入和输出05:文件模式:内核格式化

C++ primer plus 第17 章 输入、输出和文件:文件输入和输出05:文件模式:内核格式化

C++ primer plus 第17 章 输入、输出和文件:文件输入和输出05:文件模式:内核格式化
17.5 内核格式化
程序清单 17.21 strout.cpp


17.5 内核格式化

iostream 族(family)支持程序与终端之间的 1/0,而fstream 族使用相同的接口提供程序和文件之间的I/0。C++库还提供了sstream 族,它们使用相同的接口提供程序和string对象之间的1/0。也就是说,可以使用于cout 的 ostream 方法将格式化信息写入到string对象中,并使用istream方法(如 getine())来读取string 对象中的信息。读取string对象中的格式化信息或将格式化信息写入string对象中被称为内核格式化(incore formating)。下面简要地介绍一下这些工具(string的sstream 族支持取代了 char 数组的 strstream.h族支持)。
头文件 sstream定义了一个从ostream类派生而来的ostringstream类(还有一个基于 wostream 的wostringstrcam 类,这个类用于宽字符集)。如果创建了一个 ostringstrcam 对象,则可以将信息写入其中,它将存储这些信息。可以将可用于cout 的方法用于ostringstream 对象。也就是说,可以这样做:

ostringstream outstr;
double price :380.0:
char *ps ="for a copy of the ISO/EIC C++ standard!";
outstr.precision(2);
outstr <s fixed;
outstr <<"Pay onlyCHF << price << ps << endl;

格式化文本进入缓冲区,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值