C++程序设计 丁亚涛 第9章 流新.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
本章导读 void Append( fstream f ) // 入账操作 { int choice ; bookData book ; int key ; long num ; f.seekp( 0, ios::end ) ; // 读指针移到文件末尾 long posEnd = f.tellp() ; // 记录文件尾位置 cout ********** 入库登记 **********\n ; while (1) { cout 请键入操作选择 \n 1.新书号 \t 2.旧书号 \t 0.退出 \n ; cin choice ; 【例9.9】 模拟一个书店的销售账目 * 流 9 标准库 流 C++语言提供了大量经过测试的代码,这些代码编译后作为标准库提供给用户使用。 标准库中包含了大量的类、库函数、常量、变量等,其中有输入输出、数据转换、字符串操作、文件操作等,由于这些标准库由各编译器厂商提供,与具体的操作系统、厂商和编译器版本无关。 标准库主要包括标准函数库和标准类库。标准函数库是从C语言继承下来的输入输出函数、字符和字符串处理函数、数学函数、时间日期函数、内存分配函数等。标准类则是包含标准C++的输入输出流类、字符串类、数字类、异常处理类和杂项类、STL容器类等。 9.1 标准库 使用这些函数和类需要在程序中包含相应的头文件。C++的头文件有3种来源: 1.标准C语言库函数的头文件,如:string.h、stdio.h、stdlib.h等。它们带有.h后缀。 2.标准C++语言类库的头文件,如:iostream、string、vector等,它们不带.h后缀。 3.由标准C语言库函数头文件变成的标准C++头文件,如:cstring、cstdlib等,它们把原有标准C语言的库函数头文件的后缀.h去掉后,在前面加上字母c前缀。 本章主要介绍其中的C++输入输出(I/O)流类。 9.1 标准库 9.2.1 什么是流 流通常与I/O操作联系在一起,使得I/O操作具有面向对象的特征。 数据的输入/输出以字节为单位,依次逐个进行。数据的字节序列经过处理后,从一个内存地址移动到另一个内存地址的数据流动被称为字节流,简称流(stream)。流实际上是通过引入缓冲器机制,将一个对象的数据送到另一个对象的传递过程抽象成数据从一个源点到一个终点的流动操作. 9.2 流 . 按在缓冲区中是否立即处理,流分为缓冲流和非缓冲流。 .按对字节内容的解释方式分,字节流分为字符流(也称文本流)和二进制流 流类库(stream library)是用继承方法建立的输入输出类库。流类库具有两个平行的基类:streambuf类和ios 类,所有流类均以两者之一作为基类。如图所示: 9.2.2 流类库体系 类 说 明 ios 类istream和ostream的虚基类,提供流的格式化输入/输出和错误处理,并通过指向类streambuf的对象的指针成员来管理流缓冲区。 istream 类ios的公有派生类,提供输入操作。 ostream 类ios的公有派生类,提供输出操作。 iostream 由类istream和ostream公有派生,并未增加新成员,以支持输入和输出操作。 istream_withassign cin的输入流类。 ostream_withassign cout、cerr和clog的输出流类。 streambuf 管理流缓冲区。 filebuf 管理文件缓冲区。 strstream 管理字符串缓冲区。 stdiobuf 管理标准I/O的缓冲区。 流类及派生类说明 预定义的标准流对象:cin、cout、cerr和clog,需在程序中包含头文件“iostream.h”方可使用。 cin为标准输入流,缺省代表键盘。 cout为标准输出流,缺省代表显示器。 cerr和clog为标准错误信息输出流,缺省代表显示器。 cerr为非缓冲流,其余为缓冲流。 提取运算符:用于从流中提取一个字节序列。 插入运算符:用于向流中插入一个字节序列。 cin使用提取运算符实现数据的输入,其余三个标准流使用插入运算符实现数据的输出。输入流自动将要输入的字节序列形式的数据变换成计算机内部形式的数据(二进制数或ASCII)后,再赋给变量,变换后的格式由变量的类型确定。输出流自动将要输出的数据变换成字节序列后,送到输出流中。 9.2.3 预定义的标准流与提取和插入运算符 #includeiostream.h void ma

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档