- 1、本文档共37页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第10章 输入输出流 课程要求 1.深入理解C++的输入输出流的含义与其实现方法。 2.掌握标准输入输出流的应用,包括格式输入输出。 3.掌握文本文件和二进制文件的读写方法。 4.掌握文件的随机存取方法。 5.掌握字符串流的应用。 主要内容 10.1 C++的输入输出 10.2 标准输入输出流 10.3 文件操作与文件流 10.4 字符串流 10.1 C++的输入输出 C++的输入输出是以流(字节序列)的形式进行的 。 C++的输入输出主要有以下三种: (1)对系统指定的标准设备的输入输出,即标准I/O。 (2)以外存磁盘文件为对象进行的输入输出,称为文件的输入输出。 (3)对内存指定的空间进行输入输出。 10.1.1 C++流的概念 1.流与流类 C++的输入输出流是由若干字节组成的字节序列,这些字节中的数据按一定的顺序从一个对象传送到另一个对象。 C++提供了一些供程序设计者使用的类,在这些类中封装了可以实现输入输出操作的函数,这些类统称为I/O流类。流是用流类定义的对象,如cin、cout 2.流的分类 (1)文本流和二进制流 :按照数据的格式 (2)缓冲流与非缓冲流:按是否使用缓冲区 10.1.2 C++流类库 C++的流类库是用继承方法建立起来的输入输出类库,由支持标准输入输出操作的基类和支持特定种类的源和目标的输入输出操作的类组成。它具有两个平行的基类,所有其它的流类都是从它们直接或间接地派生出来的。 streambuf类:提供对流缓冲区的低级操作 ios类:提供对设备、文件的读写操作 C++流类体系 1.通用I/O流类库 (1)基类ios (2)输入类istream (3)输出类ostream (4)输入输出类iostream 2.文件I/O流类库 (1)ofstream类 (2)ifstream类 (3)fstream 类 3.字符串I/O流类库 (1)ostrstream 类 (2)istrstream 类 (3)strstream类 10.1.3 与iostream类库有关的头文件 (1) iostream.h:包含对输入输出流进行操作的基本信息,提供无格式支持的低级输入输出和有格式支持的高级输入输出操作功能。 (2) fstream.h:包含管理文件输入输出操作的有关信息。 (3) strstrea.h:包含对内存中数据进行输入输出操作的有关信息。 (4) stdiostream.h:包含进行C风格的输入输出操作的有关信息。 (5) iomanip.h:包含输入输出流的格式控制符(manipulator)的有关信息。 当一个程序中需要进行标准流输入输出操作时,则必须包含头文件iostream.h;当需要进行文件流输入输出操作时,则必须包含头文件fstream.h;当需要进行字符串流读/写操作时,则必须包含头文件strstream.h。 10.1.4 插入与提取运算符的重载 “”和“”本来在C++中被定义为左位移运算符和右位移运算符,由于在文件iostream.h中对它们进行了重载,使得它们能用作标准类型数据的输入输出运算符。从流中获取数据的操作称为提取操作,使用提取运算符“”;向流中添加数据的操作称为插入操作,使用插入运算符“”。 10.2 标准输入输出流 10.2.1 标准流类 标准流是不需要打开和关闭文件即可直接操作的流式文件。 cin:类istream的对象,用来处理标准输入,即键盘输入。 cout:类ostream的对象,用来处理标准输出,即屏幕输出。 cerr和clog:类ostream的对象,与错误信息的标准输出设备(屏幕)相关联,前者为非缓冲方式,后者为缓冲方式。 1.标准输入流 cin是由输入类istream的派生类istream_withassign定义的对象,在缺省的情况下,cin所关联的外部设备为键盘,实现从键盘上输入数据。 cin为缓冲流。 2.标准输出流 在C++流类体系中定义的标准输出流是cout、cerr、clog,是由输出类ostream的派生类ostream_withassign定义的对象,在缺省的情况下,cout、cerr、clog 所关联的外部设备为屏幕,实现数据流输出到屏幕。 cout、clog为缓冲流,而cerr为非缓冲流。 10.2.2 格式控制成员函数 数据输出的格式控制可通过两种途径实现: 使用预定义格式控制符 带参数(如setw(n))的:在头文件iomanip.h中定义 不带参数(如dec)的:在头文件iostream.h中定义 使用由ios类定义的格式控制成员函数:在头文件iostream.h中说明 1.输出宽度和填充字符 输出宽度和填充字符可通过由ios类中定义的输出域宽控制
您可能关注的文档
- 煤化学第二章煤的生成重点.doc
- 煤矿安全法规论文重点.doc
- 煤矿采掘2015年度达标规划重点.doc
- 江苏省大港中学2015-2016学年高二下学期期末考试物理试题(正)重点.doc
- 第06章UDP应用编程重点.ppt
- 膨胀土路基方案剖析.doc
- 第06章计算机操作系统重点.ppt
- 第06章门电路与逻辑代数重点.ppt
- 第07章__HTML5的数据存储重点.ppt
- 第07章FTP应用编程重点.ppt
- 2025年市总工会党组书记、市委组织部部长生活会“四个带头”个人对照检查发言材料2篇(含上年度整改+个人情况、个人事项+典型案例).docx
- 2025年部编版小学六年级下册《道德与法治》第四单元 让世界更美好第10课 我们爱和平教学课件.pptx
- 公司领导班子2025年围绕“四个带头”主题检视问题整改落实方案与组织生活会批评意见(20条)2篇文.docx
- 教育系统党组班子2025年对照“四个带头”含意识形态、以典型案例举一反三解析检视材料【2篇文】.docx
- 2025年国有企业领导班子、学校副校长生活会“四个带头”方面对照个人检视发言材料2篇文(附:上年度整改情况、典型案例解析).docx
- 2025年生活会“四个带头”个人对照检查材料2篇文(含对其他领导批评意见,个人公开事项申报、意识形态).docx
- 2025年国有企业党委书记、领导班子生活会“四个带头”方面对照检查发言材料2篇文(上年度整改情况).docx
- 乡镇领导班子、市委组织部常务副部长2025年对照“四个带头”含违纪行为为典型案例的剖析与反思检视剖析材料{2篇文}.docx
- 市委社会工作部2025年生活会领导班子对照检视发言材料2篇文(含以案为鉴,深刻反思存在问题、反面典型案例举一反三解析、其他需要说明情况).docx
- 2025年民主生活会、组织生活会批评意见(20条)与市直单位领导班子“四个带头”对照检查材料【含上年度查摆问题整改落实情况】2篇文.docx
最近下载
- 2023年01月[江苏]2023年苏州银行公司银行总部普惠金融部招考(003)号上岸笔试历年高频考点(难、易错点荟萃)附带答案详解.docx
- 统编小学语文六年级下册10《马诗》PPT课件.ppt
- 风电场升压站建筑工程主要施工方案.pdf VIP
- 2025年教师资格证中学《教育知识与能力》考试必考知识点总结.pptx
- 地下矿山各工种安全操作规.docx
- 砖混结构楼房专项拆除施工方案模板.doc VIP
- 24扬职大单招语数英日(含答案).docx
- 智慧树知到《大学生心理健康》章节测试答案.doc
- 2025年湖南机电职业技术学院单招职业适应性测试题库(培优a卷).docx VIP
- 2025年湖南单招面试题目100及最佳答案 .pdf VIP
文档评论(0)