当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

《VISUAL C++程序设计基础》(PPT教学课件)第九章 流类库和输入

资源类别:文库,文档格式:PPT,文档页数:44,文件大小:276.5KB,团购合买
9.1 C++的基本流类体系 9.2 输入输出的格式控制 9.3 标准设备的输入/输出 9.4 文件的输入与输出 9.5 字符串流(内存流) 9.6 MFC中的文件处理
点击下载完整版文档(PPT)

第九章漉类库和揄入/输出 本章的目的就是把数据保存到磁盘文件中,C++同时 解决了更多的问题。 C++语言中并没有输入/输出语句,而是在标准库 里包含了一个I/流类库,它与标准模板库同为C++标 准库中最重要的组成部分。数据从一个对象到另一个对 象的传送被抽象为“流”。数据的输入/输出就是通过 输入/输出流来实现的。 流是一种抽象的概念,负责在数据的产生者和数据 的使用者之间建立联系,并管理数据的流动

第九章 流类库和输入/输出 本章的目的就是把数据保存到磁盘文件中,C++同时 解决了更多的问题。 C++语言中并没有输入/输出语句,而是在标准库 里包含了一个I/O流类库,它与标准模板库同为C++标 准库中最重要的组成部分。数据从一个对象到另一个对 象的传送被抽象为“流”。数据的输入/输出就是通过 输入/输出流来实现的。 流是一种抽象的概念,负责在数据的产生者和数据 的使用者之间建立联系,并管理数据的流动

第九章漉类库和揄入/输出 91C++的基本流类体系 94文件的输入与输出 92输入输出的格式控制 9.5字符串流(内存流) 93标准设备的输入输出 96MFC中的文件处理

第九章 流类库和输入/输出 9.1 C++的基本流类体系 9.3 标准设备的输入/输出 9.2 输入输出的格式控制 9.4 文件的输入与输出 9.6 MFC中的文件处理 9.5 字符串流(内存流)

9.1C十+的基本谎粪体票 整个流类体系是一个派生类体系。整个流类体系在头文件 中说明,它包含了、 和。而输入输出文件流部分在 中说明,它包含 指钍「 OS streambuf istream ostream istream withassign iostream ostream withassign iostream withassign P四 图91输入输出流类派生体系

9.1 C++的基本流类体系 整个流类体系是一个派生类体系。整个流类体系在头文件 中说明,它包含了、、 和。而输入输出文件流部分在 中说明,它包含。 图9.1 输入/输出流类派生体系 ios streambuf istream ostream istream_withassign iostream ostream_withassign iostream_withassign 指针

9.1C++的基本流类体票 istream fstrstream Iostream Istream wIthassign fstream ifstream strstream stdiostream ostream streak ostream withassign ostrstream streambuf iostream init filebuf -strstreambuf stdiobuf

9.1 C++的基本流类体系 ios istream ifstrstream istream_withassign ifstream streambuf filebuf strstreambuf stdiobuf iostream_init iostream fstream strstream stdiostream ostream ofstream ostream_withassign ostrstream

9.1C十+的基本谎祟体票 在流类库中,最重要的两部分功能为标准輸 入/输出( standard input/ output)和文件处 理。在C++的流类库中定义了四个全局流对象 cin,cout,cerr和clog使用这四个流对象, 可以完成人机交互的功能。要使用这四个功能, 必须包含< iostream.h文件。 大件处理完成永久保存的功能。在VC十十的 MFC编程中采用了序列化( Serialization)。 P四

9.1 C++的基本流类体系 在流类库中,最重要的两部分功能为标准输 入/输出(standard input/output)和文件处 理。在C++的流类库中定义了四个全局流对象: cin,cout,cerr和clog。使用这四个流对象, 可以完成人机交互的功能。要使用这四个功能, 必须包含文件。 文件处理完成永久保存的功能。在VC++的 MFC编程中采用了序列化(Serialization)

92输入输出的格式控制 C++在类ios中提供格式化输入输出。格式控制符定义为公有的无名的枚举类型 enum skipws=0x0001 /跳过输入中的空格字符 left=0x0002 /输出左对齐 right=0X0004 /输出右对齐 internal=0x0008 //在输出符号或数制字符后填充 dec=0x0010 /在输入输出时将数据按十进制处理 oct=0x0020 /在输入输出时将数据按八进制处理 hex=0x0040 /在输入输出时将数据按十六进制处理 showbase=0x0080 /在输出时带有表示数制基的字符 showpoint=0x0100 /输出符点数时必定带小数点 uppercase=0x0200 /输出十六进制用大写 showpos=0x0400 /输出正数时加”+”号 scientific=0X0800 /科学数方式输出浮点数 fxed=01000 定点数方式输出实数 unitbuf=0x2000 //插入后立即刷新流 stdio=ox4000 即刷新

9.2 输入输出的格式控制 C++在类ios中提供格式化输入输出。格式控制符定义为公有的无名的枚举类型: enum{ skipws=0x0001 //跳过输入中的空格字符 left=0x0002 //输出左对齐 right=0x0004 //输出右对齐 internal=0x0008 //在输出符号或数制字符后填充 dec=0x0010 //在输入输出时将数据按十进制处理 oct=0x0020 //在输入输出时将数据按八进制处理 hex=0x0040 //在输入输出时将数据按十六进制处理 showbase=0x0080 //在输出时带有表示数制基的字符 showpoint=0x0100 //输出符点数时,必定带小数点 uppercase=0x0200 //输出十六进制,用大写 showpos=0x0400 //输出正数时,加”+”号 scientific=0x0800 //科学数方式输出浮点数 fixed=0x1000 //定点数方式输出实数 unitbuf=0x2000 //插入后,立即刷新流 stdio=0x4000 //插入后,立即刷新stdout和stderr }

92输入输出的格式控制 采用格式控制,只要把对应位置1即可,取多种控制时,用或“|”运算符来 合成。 【例91】整型数输出。 include void main (void)t int inum=255 cout<<”十进制方式”<<inum<<tt’ cout. flags(ios::oct ios: showbase) cout<<”八进制方式”<<inum<<1t; cout, setf(ios: hex); cout<<”十六进制方式”<<inum<<end 程序执行后输出:十进制方式255八进制方式0377 十六进制方式oxff

9.2 输入输出的格式控制 采用格式控制,只要把对应位置1即可,取多种控制时,用或“|”运算符来 合成。 【例9.1】整型数输出。 #include void main(void){ int inum=255; cout<<”十进制方式”<<inum<<’\t’; cout.flags(ios::oct|ios::showbase); cout<<”八进制方式”<<inum<<’\t’; cout.setf(ios::hex); cout<<”十六进制方式”<<inum<<endl; } 程序执行后输出:十进制方式255 八进制方式0377 十六进制方式0xff

92输入输出的格式控制 【例92】浮点数输出 include void minot double fnum=31. 415926535: cout<<”缺省域宽为<< cout width(<<”位”<<n’; cout<<”缺省精度为:”<< cout. precision()<<”位”<<Ⅷn cout<<”缺省表达方式:”<<funm<< cout setf(ios: scientific, ios: floatfieldi cout<<”科学数表达方式”<<fmum<<n cout, setf(ios: fixed,ios: floatfieldi cout<<”定点表达方式:”<<fnum<<n’; cout. precision (9); cout setf(ios: scientific, ios: floatfield) cout<<”定点9位科学数表达方式:”<<fnum<<endl

9.2 输入输出的格式控制 【例9.2】浮点数输出。 #include void main(){ double fnum=31.415926535; cout<<”缺省域宽为:”<<cout.width()<<”位”<<’\n’; cout<<”缺省精度为:”<<cout.precision()<<”位”<<’\n’; cout<<”缺省表达方式:”<<funm<<’\n’; cout.setf(ios::scientific,ios::floatfield); cout<<”科学数表达方式:”<<fnum<<’\n’; cout.setf(ios::fixed,ios::floatfield); cout<<”定点表达方式:”<<fnum<<’\n’; cout.precision(9); cout.setf(ios::scientific,ios::floatfield); cout<<”定点9位科学数表达方式:”<<fnum<<endl; }

92输入输出的格式控制 其中 floatfield,是为了避免浮点数互相冲突的双重规定,所以是 清除原浮点数第13和第14两位,再用新的一位去代替。程序执行 后输出 缺省域宽为:0位 缺省精度为:6位 缺省表达方式314159 科学数表达方式:3141593e+001 定点表达方式31415927 定点9位科学数表达方式:3141592654e+001

9.2 输入输出的格式控制 其中floatfield,是为了避免浮点数互相冲突的双重规定,所以是 清除原浮点数第13和第14两位,再用新的一位去代替。程序执行 后输出: 缺省域宽为:0位 缺省精度为:6位 缺省表达方式:31.4159 科学数表达方式:3.141593e+001 定点表达方式:31.415927 定点9位科学数表达方式:3.141592654e+001

92输入输出的格式控制 cin,cout和clog都是缓冲流。输出而言, 仅当输出缓冲区瀇才将缓冲区中的信息输出, 对输入而言。仅当输入一行结束。才开始从 缓冲区中取数据,当希望把缓冲区中的傖鳥 立即输出,可用f1ush

9.2 输入输出的格式控制 cin,cout和clog都是缓冲流。输出而言, 仅当输出缓冲区满才将缓冲区中的信息输出, 对输入而言,仅当输入一行结束,才开始从 缓冲区中取数据,当希望把缓冲区中的信息 立即输出,可用flush

点击下载完整版文档(PPT)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共44页,可试读15页,点击继续阅读 ↓↓
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有