欢迎来到天天文库
浏览记录
ID:49376297
大小:59.50 KB
页数:23页
时间:2020-02-05
《C++流的概念.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第九章C++流一、C++流的概念C++中把数据之间的传输操作称作流。在C++中,流既可以表示数据从内存传送到某个载体或设备中,即输出流;也可以表示数据从某个载体或设备传送到内存缓冲区变量中,即输入流。在C++语言中,数据的输入和输出(I/O)包括:1、对标准输入设备键盘和标准输出设备显示器的输入输出,简称标准I/O2、对在外存磁盘上文件的输入输出,简称文件I/O3、对内存中指定的字符串存储空间进行输入输出,简称串I/O一、C++流的概念C++为实现数据的输入和输出定义了一个庞大的类库,它包括的类主要有ios为根基类,它直接派生四个类
2、:输入流类istream、输出流类ostream、文件流基类fstreambase、字符串流基类strstreambase。其中的每一个类都称作相应的流或流类,用以完成某一方面的功能,根据一个流或流类定义的对象也时常称为流一、C++流的概念C++系统中的I/O类库,其所有类被包含在iostream.h(进行标准I/O操作)fstream.h(进行文件I/O操作)strstrea.h(进行串I/O操作)这三个系统头文件中,P308所示,此外iomanip.h(上述操作时要用到stew等操纵符时)包含setw等大多数操纵符的定义以及i
3、ostream.h中的所有内容一、C++流的概念C++有4个预定义的流对象如下cin标准输入键盘属istreamcout标准输出显示器属ostreamcerr标准出错信息输出显示器属ostreamclog带缓冲的标准出错信息输出属ostream一、C++流的概念C++的流通过重载运算符“<<”和“>>”执行输入和输出操作1、输出操作是向流中插入一个字符序列,因此将运算符“<<”称为插入运算符istream&operator>>(简单类型标识符&);2、输出操作是从流中提取一个字符序列,因此,将运算符“>>”称为提取运算符ostre
4、am&operator<<(简单类型标识符);一、C++流的概念利用C++流既能进行有格式输入输出,也可进行无格式输入输出有格式输入输出针对的是键盘、显示器、打印机等字符设备以及磁盘中的文本文件,无论输入输出的是什么数据类型,体现在外部设备上都是字符序列,可用DOS的TYPE命令显示其内容对于无格式输入输出,数据的内部存储格式与外部存储格式完全相同,因此无格式输入输出只能针对磁盘文件,而且这样的文件通常不能用DOS的TYPE命令显示在屏幕上二、输入输出的格式控制C++的输入输出,可以通过设置相应标置,进行格式化的输入输出效果,这些标
5、志见P312每一个标志为1时表示标志已设置,为0时表示标志未设置关系密切的标志同属一个域,使用标志时须加上ios::域方可访问标志二、输入输出的格式控制可以通过调用下列三个函数设置格式标志1、longios::setf(longflag,longmask);2、longios::setf(longflag);3、longios::unsetf(longflag);其中flag为格式控制标志,mask为域1、cout.setf(ios::left,ios::adjustfield);2、cout.setf(ios::show
6、pos);3、cout.unsetf(ios::showpos);二、输入输出的格式控制除用上述三个函数进行格式控制外,还可用操作符:setiosflags(格式控制标志)—对应于setf函数resetiosflags(格式控制标志或域)—对应于unsetf函数例:cout<7、e)4、io.width(n)/setw(intn)5、io.precision(n)6、o.unsetf(ios::floatfield)7、o.setf(ios::fixed,ios::floatfield)8、o.setf(ios::scientific,ios::floatfield)9、o.setf(ios::showpoint)10、o.setf(ios::left,ios::adjustfield)11、o.setf(ios::right,ios::adjustfield)12、o.setf(ios:8、:internal,ios::adjustfield)三、文件控制文件的概念1、在磁盘上保存的信息是按文件的形式组织的,每个文件都对应一个文件名,并且属于某个物理盘或逻辑盘的目录层次结构中一个确定的目录之下。一个文件名由文件主名和
7、e)4、io.width(n)/setw(intn)5、io.precision(n)6、o.unsetf(ios::floatfield)7、o.setf(ios::fixed,ios::floatfield)8、o.setf(ios::scientific,ios::floatfield)9、o.setf(ios::showpoint)10、o.setf(ios::left,ios::adjustfield)11、o.setf(ios::right,ios::adjustfield)12、o.setf(ios:
8、:internal,ios::adjustfield)三、文件控制文件的概念1、在磁盘上保存的信息是按文件的形式组织的,每个文件都对应一个文件名,并且属于某个物理盘或逻辑盘的目录层次结构中一个确定的目录之下。一个文件名由文件主名和
此文档下载收益归作者所有