[工学]C++程序设计课件第4章.ppt

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 输入/输出流 本章学习重点掌握内容: 输入/输出流类体系结构 输入/输出流的格式化 输入/输出流对象 文本文件和二进制文件的输入和输出 综合应用实例 第4章 输入/输出流 4.1 输入/输出流基本概念 4.2 输入/输出流类体系 4.3 I/O流操作 4.4 文件流和文件的输入/输出 4.5 字符串流 4.6 重载插入和提取运算符 4.1 输入/输出流基本概念 1、流 流是一种抽象,它负责在数据的生产者(程序/文件)和数据的消费者(文件/程序)之间建立联系,并管理数据的流动。 2、字节流 字节流分为字符流(也称文本流)和二进制流。字符流在数据传输时需作转换,效率较低。但可以直接编辑,显示或打印。 4.1 输入/输出流基本概念 二进制流将字节流的每个字节以二进制方式解释,它在数据传输时不作任何转换,故效率高。但无法人工阅读,可移植性较差。 3、 文件 文件是一般指存储在外部介质上数据的集合。计算机中的程序、数据、文档通常都组织成文件存放在外存储器中。 4.1 输入/输出流基本概念 4、缓冲 系统在主存中开辟的、用来临时存放输入输出数据的区域,成为输入输出缓冲区(简称缓冲区)。 5、命名空间 命名空间,就是在程序的不同的模块中使用相同的名字表示不同的事物(实体)。目的是提供一种机制,使大程序的各个部分中因出现重名而导致冲突的可能性降到最低。 4.2 输入/输出流类体系 C++为实现数据的输入和输出定义了一个庞大的流类库,它包括的类主要有ios,istream,ostream,iostream,ifstream,ofstream,fstream等。类istream和ostream是类ios的公有派生类,分别提供输入和输出操作。继承关系见下图 。 4.2.1 流类库 4.2.1 流类库 C++I/O常用流类列表(1) 4.2.1 流类库 C++I/O常用流类列表 (2) 4.2.2 标准流对象 C++ 语言在头文件 iostream.h 中预定义了 4个标准流类的对象: extern istream cin; / 标准输入流对象 extern ostream cout; // 标准输出流对象 extern ostream cerr; // 标准错误流(非缓冲)对象 extern ostream clog; // 标准错误流对象 4.2.2 标准流对象 cin 是console input缩写。在默认的情况下,代表键盘。 cout 是console output的缩写。在默认的情况下,代表显示器。 cerr和clog 是 console error和console log的缩写。在默认的情况下,代表显示器。这四个标准流中,cerr为非缓冲流,其余均为缓冲流。 输入就是从流中提取一个字节序列,C++用“”运算符表示提取,称为提取运算符。输出就是向流中插入一个字节序列,用“”运算符表示插入,称为插入运算符。这两个运算符分别定义在类ostream和istream中。 4.2.2 标准流对象 【例4.1】使用流cout和cerr实现数据的输出。 #includeiostream.h void main(void) { float a,b; cerr ”输入a和b的值:\n”; cinab; if (b!=0) couta’/’b’=’a/b’\n’; else cerr”除数为零!\n”; } 4.3 I/O流操作 4.3 I/O流操作 控制输出格式的流成员函数 4.3 I/O流操作 设置格式状态的格式标志 4.3 I/O流操作 【例4.2】用格式控制符setw、hex、dec指定输出数据的域宽和数制。 #includeiostreamh #includeiomanip.h void main(void) { int a=256,b=128; cout setw(8)a”b=”b’\n’; //Line1 cout hexa”b=”decb’\n’; //Line2 } 4.3 I/O流操作 【例4.3】数据进制之间的转换。 #includeiostream.h //因iomanip.h中包含有iostream.h,所以该命令也可省略 #includeiomanip.h void main() { int x=30, y=300, z=1024; coutx y zendl; //按十进制输出

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档