第5部分 I-O流.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文档。上传文档
查看更多
第5部分 I-O流

第十四章 I/O流 printf和scanf的缺陷 使用时需要写出比较繁琐的格式说明; printf(“%d,%f”, i, f); 编译器无法检查对它们调用的正确性; double f; printf(“%d”, f); int i; scanf(“%d”, i); 只能进行基本数据类型的输入/输出,而c++中有大量的用户自己定义的类的对象; class X{......}; X x; printf(“%?”, x); 流和流类库 流:数据从数据的生产者到数据的消费者的流动。 流类库:提供一组类,程序利用它们可以方便的与外部世界交换数据。 C++的流类库是用继承的方法建立起来的一个输入输出类库。 流类库有两个基类:streambuf类和ios类; streambuf类提供对缓冲区的低级操作,如缓冲区的设置、缓冲区的读写等。 ios类主要定义了用于格式化输入/输出及出错处理的成员函数。 每个流都和一种与设备相联系: 与输入设备(如键盘)联系的流为输入流; 与输出设备(如屏幕)联系的流为输出流; C++中预定义了标准输入流cin、标准输出流cout、非缓冲的出错流cerr和缓冲的出错流clog。 I/O流类层次 ios istream istrstream istream_withassign ifstream ostream ostrstream ostream_withassign ofstream 输出流 输出流对象是信息流动的目标; ostream,ofstream,ostrstream ostream类通过派生类ostream_withassign支持预先定义的流对象: cout: 标准输出; cerr:标准错误输出,没有缓冲,发给它的内容立即输出; clog:类似于cerr,但有缓冲,缓冲区满时被输出; ofstream类支持磁盘文件输出; ostrstream类支持字符串输出; 流插入运算符 流插入运算符实现流的输出; 对应每个基本数据类型, ostream流类都定义了重载运算符; ostream operator (char*) ostream operator (int) ostream operator (float) 可以把多个输出操作组合到一个语句中; 不同类型的数据可以组合在一个语句中; int a; double b; coutaOKb; 标准输出 如果输出到标准输出设备,使用预先定义的cout、cerr、clog对象,不需要构造流对象。 int a=10; couta; cerr“Error! ; 输出文件流类ofstream 文件流类在fstream.h中定义; 要将信息输出到文件,就要构造和建立ofstream流类对象,并打开文件; 构造对象时指定文件名和模式: ofstream::ofstream(const char* szName, int nMode=ios::out, int nProt =filebuf::openprot); 例:ofstream outfile(data.dat, ios::nocreate); 使用ofstream类的缺省构造函数,再调用成员函数open : void ofstream::open( const char* szName, int nMode = ios::out, int nProt = filebuf::openprot ); 如: ofstream outfile; outfile.open(data.dat, ios::binary); 调用ofstream类的close成员函数关闭文件; 在对象消失时,由析构函数关闭由构造函数或open成员函数打开的文件。 文件打开选择项 文件保护方式选项 例:向文件myfile中写入一些信息,如果文件不存在,则创建该文件 方式1:构造对象时打开文件 ofstream fout(e:\\a1\\myfile.txt); foutA test.endl; 方式2:使用成员函数open ofstream fout; fout.open(e:\\a1\\myfile.txt); fout A test. endl; 向文件myfile中追加一些信息: 方式1:构造对象时打开文件 ofstream fout(e:\\myfile.txt, ios::ate); foutA new fileendl; 方式2:调用成员函数open ofstream fout; fout.open(e:\\myfile.txt, ios::ate); foutA new file endl;

文档评论(0)

haowendangqw + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档