C++程序设计04737-第7章-输入输出流.pptxVIP

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

第七章输入输出流

;学习目标:

1.理解并掌握输入/输出流类的基本概念,掌握标准流对象的基本概念和常见的标准流对象,掌握cin和cout重定向方法。

2.掌握对输入/输出流进行格式控制的常见方法,掌握常见的流操纵符和标志字,能够应用相关的方法完成I/0格式控制。

3.掌握cin和cout中常见成员函数的基本功能和使用方法。

4.能够综合应用相关函数解决应用问题。

建议学时:4学时。

教师导读:

1.本章的核心概念是流类,学习重点是标准流对象cin和cout的应用。

2.在讲解输入/输出流格式控制和常用函数时,可以设计更多的程序实例,程序实例的演示和讲解更便于考生理解相关的知识点。

3.本章的难点是如何综合运用cin和cout中提供的常见成员函数解决实际应用中的问题。

4.学习完本章后,应要求考生完成实习题目8。

本章在简要介绍C++I/O流类基本概念的基础上,以标准流对象cin和cout为背景,重点介绍I/O格式控制的常用方法,通过实例给出常见的流操纵符及使用方法、设置标志字进行格式控制的方式和调用成员函数的方法。结合程序实例介绍cin和cout中的常见成员函数的功能和使用方法。

;7.1流类简介;图7-1中的箭头代表派生关系。ios是抽象基类,提供输入/输出所需的公共操作,它派生出两个类istream和ostream。为了避免多重继承的二义性,从ios派生istream和ostream时,均使用了virtual关键字(虚继承)。istream类提供了流的大部分输入操作,对系统预定义的所有输入流重载提取运算符“”。

ostream类对系统预定义的所有输出流重载插入运算符“”。

由istream和ostream又共同派生了iostream类。

表7-1列出了这些类的简要说明和使用它们时所需包含的头文件。

;;7.2标准流对象;所谓重定向,就是改变默认的输入来源,或改变默认的输出目的地。例如,cout默认是输出到屏幕上,但经过重定向后可将原本输出到屏幕上的数据变为输出到文件中保存。

重定向函数freopen的原型如下:

FILE*freopen(constchar*path,constchar*mode,FILE*stream);

函数freopen()的功能是将stream按mode指定的模式重定向到路径path指向的文件。如果重定向时发生错误,则关闭原来的stream,函数返回NULL。mode可以是“w”(写)或“r”(读)方式。

[程序7-1]将标准输出cout重定向到文件

#includeiostream

usingnamespacestd;

intmain()

{intx,y;

cinxy;

freopen(“test.txt”,“w”,stdout);//将标准输出重定向到文件test.txt,stdout代表标准输出

if(y==0) //除数为0则输出错误信息

cerrerror.endl;

else

coutx/y=x/yend;

return0;}

[程序说明]程序7-1中使用了重定向函数freopen(),其中第1个参数test.txt为文件名,第2个参数w”代表重定向为“写”方式,第3个参数stdout代表标准输出。该语句的作用是将标准输出重定向为文件test.txt.重定向后所有对cout的输出都不再出现在屏幕上,而是保存到test.txt文件中。test.txt文件会出现在本程序的可执行文件所在的文件夹中。重定向仅对本程序有效,不会影响到其他程序。

运行程序7-1,输入以下内容:.

103

程序在屏幕上没有显示结果,但是打开文件test.txt可以看到文件中有以下内容:

10/3=3

再次运行程序7-1,然后输入:

100

则在屏幕上输出以下内容:

error.

说明cout被重定向,但cerr没有被重定向。;cin也是可以被重定向的。

编写程序,将从键盘读取10个整数更改为读取文件中的前10个整数(假设文件中的整数超过10个),然后计算这些整数的平均值,见程序7-2。

[程序7-2]标准输入重定向为文件

#includeiostream

usingnamespacestd;

intmain()

{intx,count,sum=0;

freopen(input.dat,r,stdin); //将标准输入重定向到文件input.dat

for(count=0;count10;count++)

{cinx;sum+=x;}

cout前10个整数的平均值=1.0*sum/10endl;

return0;

}

[程序说明]程序中语句“freopen(input.da

文档评论(0)

A~下一站守候 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档