欢迎来到天天文库
浏览记录
ID:40238206
大小:584.50 KB
页数:74页
时间:2019-07-28
《C++程序设计 冯博琴 C++第10章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第10章输入输出和异常处理中国铁道出版社110.1C++流的概念C++的输入输出操作通过流完成输入操作是从某个地方接收到字符序列(字节流)后,将其转换成一个对象的状态所要求的格式输出操作是将一个对象的状态转换成一个字符序列后输出到指定的地方。C++将与输入输出有关的操作定义在多个类中,这些类的集合构成类体系执行输入输出操作的类体系称为流类,常用的有标准流类、文件流类和字符串流类实现流类的库称为流类库21.基本流类这些类在头文件iostream中进行声明。(1)streambuf类该类为其派生类ios类提供对数据的缓冲支
2、持,iso类中的一个指针成员指向该类的对象。3(2)ios类提供对流进行格式化的输入输出操作等,是一个虚基类。(3)istream类提供对该类对象的输入操作,由提取运算符“>>”来实现(4)ostream类提供对该类对象的输出操作,由插入运算符“<<”来实现(5)iostream类将istream和ostream两个类组合在一起,支持对一个流的双向操作,从而实现输入和输出操作。42.文件流类(1)fstreambase类这是一个公共的基类(2)filebuf类从streambuf类派生来的,提供对数据的缓冲支持。(3)
3、ifstream类由istream类派生而来,实现对文件的提取操作。(4)ofstream类由ostream类派生而来,实现对文件的插入操作。(5)fstream类由ifstream和ofstream两个类派生而来,实现对文件的输入和输出操作。这些类都在头文件fstream中说明。53.字符串流类(1)istrstream类由istream类派生而来,实现从序列中提取字符。(2)ostrstream类由ostream类派生而来,实现将字符插入到序列中。这2个类都在头文件strstream中说明。64.头文件(1)头文件
4、iostream使用cin、cout等对标准设备进行输入输出操作,要包含此文件(2)头文件fstream使用文件流对象对磁盘文件进行输入输出操作,要包含此文件。(3)头文件strstream使用字符串流对象对内存的字符串空间进行输入输出操作时,要包含此文件(4)头文件iomanio要使用setw、fixed等操作符时,要在程序的开始包含此文件。75.流对象C++中预定义了4个流对象(1)cinistream类的标准输入对象,和标准输入设备键盘相联系。(2)coutostream类的标准输出对象,和标准输出设备显示器相联
5、系。(3)cerr不带缓冲的标准出错信息输出,ostream类的一个对象,和显示器相联系(4)clog带缓冲的标准出错信息输出,ostream类的一个对象,和显示器相联系810.2输入输出格式10.2.1数据的输入输出主要有以下3种不同的方法:使用流类对象cout和cin使用成员函数get()和put()输入输出字符使用成员函数read()和write()输入输出字符串91.使用流类对象cout和cin(1)一个流中可以使用多个插入运算符,数据项可以是常量、变量、表达式,数据项兼有计算功能例如:intx=3,y=5;c
6、out<<"x="<>变量1>>变量2……102.成员函数get()和put()成员函数put()将字符送到输出流中,实现单个字符的输出格式1:cout.put(字符);格式2:cout.put(字符1).put(
7、字符2).put(字符3)……;“字符”可以是字符常量、字符变量、整型表达式11【例10-1】使用函数put()输出字符#includeusingnamespacestd;voidmain(){cout.put('a');//输出字符常量cout.put('x').put('y').put('z');//输出3个字符cout.put(65);//输出ASCII码为65的字符cout.put('A'+1);//输出ASCII码为表达式'A'+1结果的字符charx='z';cout.put(x);//
8、输出字符变量的值}12get()函数从输入流中获取一个字符,并将该字符赋给指定的字符变量格式:cin.get(字符变量);或:字符变量=cin.get();例如:charch;cin.get(ch);或者:ch=cin.get();13【例10-2】输入字符串并输出从键盘输入一串字符并在屏幕上输出,该字符串以“#”作为结束符。#i
此文档下载收益归作者所有