程序设计实习概要.ppt_第1页
程序设计实习概要.ppt_第2页
程序设计实习概要.ppt_第3页
程序设计实习概要.ppt_第4页
程序设计实习概要.ppt_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、编程实践、IOs Stream和文件操作、IOs Stream、与流操作相关的类及其在流的概念模型C中的继承关系、IOs Stream对象: cin、cout、cerr、clog、输出流、输入流、未格式化的IOs Stream操作符、流格式状态、流的概念模型、Stream-可以看作是一个无限的二进制数字序列,它通过读写指针读写流(以字节为单位)。、将流中的数据读入变量X,将Y的值写入流、Y、X和流的概念模型。输出流可以被视为单向流,一端是无限的,另一端通过写指针不断地向后写新内容。读指针、字符模式/二进制模式下的格式化读写和非格式化读写、格式化读写、以特定数据类型为单位的读写,例如:读取整数、

2、写入浮点数等。无格式读写,以字节为单位读写,不区分内容,如读20字节,写50字节;缓冲区刷新,当向输出流写入数据时,通常是先写入缓冲区,当缓冲区满了时,才真正写入输出流;您还可以通过程序中的函数主动将缓冲区内容写入输出流。与流操作相关的类及其继承关系在c,IOs,istream,o stream,ifstream,IOs stream,ofstream,fstream,标准流对象,输入流对象: cin与标准输入设备连接输出流对象:cout与标准输出设备连接cerr与标准错误输出设备连接无缓冲输出阻塞与标准错误输出设备连接缓冲输出,输出流,流插入操作符cout“早上好!“n”;不要将缓冲区刷新为

3、“好”;不要刷新缓冲库“早上好!”;不要刷新缓冲区目录;刷新缓冲区刷新;刷新缓冲区,输出流,并使用成员函数put输出字符cout。放(一);连续使用put cout。把(一)。放(a);输入流,读取操作的返回值,重载运算符定义: istream while(cinx),输入流,成员函数cin.get()读入一个字符(包括空白字符),并返回该字符;Cin。get (char * buffer,int size,chardelim=n)或将size 1字符读入缓冲区,或满足n;在缓冲区末尾添加0,并将分隔符留在输入流中。CIN.getline (char * buffer,int size,cha

4、rdelim=n),或将size 1字符读入缓冲区,或遇到n;在缓冲区的末尾,添加0,分隔符移除。cin.eof()返回输入是否结束的符号。输入流,以及其他函数CIN . peek();返回下一个字符,不删除。从流中放回(char ch );将字符ch放回输入流忽略(intncount=1,int delim=eof);从流中删除最大数量的非计数字符,并在遇到电渗流时结束。未格式化的输入和输出,使用读写来输入和输出指定的字节数const int SIZE=80char缓冲区大小;cin.read(缓冲液,20);cout.write(缓冲区,CIN . gcount();/gcount返回上次

5、读取的字节计数coutindl输入:使用读取、写入和计算成员函数输出:使用读取、写入、流运算符、整数流的基数:流运算符dec、oct、hex、setbase浮点数的精度(精度、设定精度)设置字段宽度(setw、宽度)用户定义的流运算符需要#include、流运算符、整数流的基数:流运算符dec、oct、hex int n=10cout n endlcout hex n n dec n n oct n endl输出结果:10 a 10 12,控制浮点精度、精度、设定精度的流操作符为成员函数,调用方法为cout . precision(5);Setprecision是一个流操作符,它的调用模式是c

6、out set precision(5);/可以连续输出。它们具有相同的功能。指定输出浮点数的有效位数,浮点数最多输出6个有效位数,使用命名空间标准# include # includeint main() double x=1234567.89,y=12.34567int n=1234567int m=12cout设定精度(6)x endl y endl n endl m;一个控制浮点数精度的流运算符。输出为1.23457e 006 12.3457 1234567 12,以固定的十进制位置输出,使用命名空间标准# include # includeint main() double x=12

7、34567.89,y=12.34567int n=1234567int m=12cout set IOs flags(IOs : fixed)set precision(6)x endl y endl n endl m;一个控制浮点数精度的流运算符。产量:1234567.890000 11.345670 1234567 12。取消小数点位置固定的输出,使用命名空间标准#包括#包含;int main()double x=1234567.89;cout set IOs flags(IOs : fixed)set precision(6)x endl resetiosflags(IOs : fixe

8、d)x;一个控制浮点数精度的流运算符。产出:1234567.890000 1.23457e 006。设置具有字段宽度的流操作符和设置字段宽度(setw,width)具有相同的功能,一个是成员函数,另一个是流操作符,调用方式不同:CIN set w(5);或CIN . width(5);cout set w(5);或cout . width(5);设置流操作符的字段宽度,设置字段宽度(setw,width)示例:int w=4;输入:1234567890字符字符串10;输出:1234厘米宽(5);5678 while(cin弦)90 cout . width(w);cout字符串endlCIN

9、. width(5);设置流操作符的字段宽度,设置字段宽度(setw,width)需要注意的是每次读取和输出前要设置宽度。例如:char str10输入:1234567890 CIN . width(5);输出:1234 cin字符串;567890 cout字符串;cout字符串endl设置流操作符的字段宽度,设置字段宽度(setw,width)需要注意的是每次读取和输出前要设置宽度。例如:char str10输入:1234567890 CIN . width(5);输出:1234 cin字符串;5678 cout字符串;cout字符串endl,用户定义的流操作符,ostream输出:aa b

10、b为什么?用户定义的流操作符,因为在iostream中,重载(成员函数)操作、文件操作、数据的分层文件和流建立。顺序文件的读写指针有格式化读写、无格式化读写、数据层次、位字节字节字段/记录,例如:学生记录整数;char name10国际年龄;int rank10我们把所有的记录按顺序写入一个文件,这叫做顺序文件。文件和流,顺序文件可以看作是由有限字符组成的顺序字符流,然后像CINCIN库特那样读写。查看IOs stream类的结构级别:IOs,is stream,ostream,ifstream,IOs stream,ofstream,fsstream,创建顺序文件,#include /include包含流输出文件的头文件(“clients.dat”,IOs :3360 out | IOs 33603360)/打开流的文件是在fsstream中定义的类。outFile是我们定义的ofstream类的对象。“clients.dat”是要创建的文件的文件名。ios:out是打开和创建文件的选项。ios:out输出到文件。删除原始内容ios:app输出到文件,保留原始内容,始终将ios:ate输出添加到文件末尾,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论