




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C程序设计单元十一文件输入/输出11.1标准I/O标准I/Ofopen()函数getc()和putc()函数fclose()函数01020304CONTENT标准I/O标准I/O有许多专门的函数简化了处理不同I/O的问题。输入和输出都是缓冲的。fopen()函数函数功能:打开一个文件函数原型:FILE*fopen(const
char
*
path,constchar*
mode);相关函数:open,fclose,fopen_s,_wfopen返回值:文件顺利打开后,指向该流的文件指针就会被返回。如果文件打开失败则返回NULL,并把错误代码存在errno
中。一般而言,打开文件后会作一些文件读取或写入的动作,若打开文件失败,接下来的读写动作也无法顺利进行,所以一般在fopen()后作错误判断及处理。参数说明:参数path字符串包含欲打开的文件路径及文件名,参数mode字符串则代表着流形态。mode有下列几种形态字符串:r以只读方式打开文件,该文件必须存在。r+以可读写方式打开文件,该文件必须存在。rb+读写打开一个二进制文件,允许读写数据。rw+读写打开一个文本文件,允许读和写。w打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。w+打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。a以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。(EOF符保留)a+以附加方式打开可读写的文件。wb只写打开或新建一个二进制文件;只允许写数据。wb+读写打开或建立一个二进制文件,允许读和写。ab+读写打开一个二进制文件,允许读或在文件末追加数据。at+打开一个叫string的文件,a表示append,就是说写入处理的时候是接着原来文件已有内容写入,不是从头写入覆盖掉,t表示打开文件的类型是文本文件,+号表示对文件既可以读也可以写。getc()和putc()函数getc原型:intgetc(FILE*fp)作用:函数功能是从文件指针指向的文件读入一个字符,并把它作为函数值返回给int型变量ch。,此函数被ISOC声明为一个宏,所以在用时不能将其做为函数指针传返回值:成功:返回读入的字符失败:EOF所在头文件:stdio.hputc()原型:intputc(intch,FILE*fp)作用:输出一字符到指定流中返回值:成功:成功则函数返回值为该字符的ASCII值失败:EOF所在头文件:stdio.h说明:putc()与fputc()等价。不同之处为:当putc函数被定义为宏时,它可能多次计算stream的值。fclose()函数头文件:#include<stdio.h>
fclose()函数用来关闭当前文件流,其原型为:
intfclose(FILE*stream);
【参数】stream为文件流指针。
【返回值】若关文件动作成功则返回0,有错误发生时则返回EOF,并把错误代码存到errno。
fclose()用来关闭fopen()打开的文件,此动作会让缓冲区内的数据写入文件中,并释放系统所提供的文件资源。
注意:使用fopen()打开的文件,一定要记得使用fclose()关闭,否则会出现很多意想不到的情况,例如对文件的更改没有被记录到磁盘上,其他进程无法存取该文件等。
谢谢THANKYOU主讲人:周建儒C程序设计精品在线开放课程单元十一文件输入/输出:
文件I/O文件读写函数文件读写实例0102CONTENT文件操作的步骤step1打开或新建文件;step2读、写文件;
step3关闭文件;FILE
*fopen(char*filename,char*type)以type方式打开一个文件,并返回文件指针。fopen函数:r只读文本文件;w只写文本文件,如果文件已经存在,则删除其中的内容,否则新建一个文件;a追加写的方式操作文本文件,如果文件存在就打开,没有就创建文件;r+读或写的方式操作文本文件或二进制文件,文件必须存在;w+读或写的方式操作文本文件或二进制文件,如果文件已经存在,则删除其中的内容;a+读或追加写的方式操作文本文件或二进制文件,如果文件存在就打开,没有就创建文件;intfclose(FILE*stream)关闭一个流,可以是文件或设备。
fclose函数:intfprintf(FILE*stream,char*format[,arg1…])以格式化形式将一个字符串写入指定的流(文件)。
fprintf函数:intfscanf(char*stream,char*format[,arg1…])以格式化形式从流(文件)中读入一个字符串。fscanf函数:char*fgets(char*string,intsize,FILE*stream)从流或文件中读size个字符,并存入string(数组)中。
fgets函数:intfputs(char*string,FILE*stream)将字符串写入文件中。fputs函数:intfeof(FILE*stream)检查文件是否结束,文件结束返回非0,否则返回0。feof函数:例:输入5个整数写入文本
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 春节节目创新
- 商品押金合同范例
- 厂家质保合同范本
- 办公室工作人员述职报告
- 初中生涯的适应与挑战
- 国庆节营销合同范例
- 北京防水备案合同范本
- 园林维修用工合同范本
- 反诉状合同范本
- 加工洗砂合同范本
- GB/T 11358-1999带传动平带和带轮尺寸和公差
- 细胞内蛋白质的分选和运输细胞生物学-1
- 高压电气试验培训课件-
- 纳米生物医用材料课件
- 第十章可持续发展理论与实践课件
- 洗浴中心转让合同(5篇)
- 外研版小学英语五年级下册课文翻译
- YY-T 1823-2022 心血管植入物 镍钛合金镍离子释放试验方法
- 年产12000吨水合肼(100%)项目环评报告书
- 钻芯法检测混凝土抗压强度原始记录1
- 液压支架与泵站(第二版)课件汇总全书电子教案完整版课件最全幻灯片(最新)
评论
0/150
提交评论