- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
C程序设计
单元十一文件输入/输出11.1标准I/O
标准I/Ofopen()函数getc()和putc()函数fclose()函ONTENT
标准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.h
putc()原型:intputc(intch,FILE*fp)作用:输出一字符到指定流中返回值:成功:成功则函数返回值为该字符的ASCII值失败:EOF所在头文件:stdio.h说明:putc()与fputc()等价。不同之处为:当putc函数被定义为宏时,它可能多次计算stream的值。
fclose()函数
头文件:#includestdio.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…
您可能关注的文档
- C语言实例教程(第3版)课件 单元 三 语法基础.pptx
- C语言实例教程(第3版)课件 单元 一 初识C语言.pptx
- C语言实例教程(第3版)课件 单元八 函数.pptx
- C语言实例教程(第3版)课件 单元二 C语言概述.pptx
- C语言实例教程(第3版)课件 单元九 数组和指针.pptx
- C语言实例教程(第3版)课件 单元六 C控制语句:分支跳转.pptx
- C语言实例教程(第3版)课件 单元七 C控制语句:循环.pptx
- C语言实例教程(第3版)课件 单元十 字符串和字符串函数.pptx
- C语言实例教程(第3版)课件 单元四 格式化输入输出.pptx
- C语言实例教程(第3版)课件 单元五 运算符与表达式.pptx
- 中国三迪控股有限公司环境、社会及管治报告2019.pdf
- 珠江船务企业(股份)有限公司2019年度环境、社会及管治报告.pdf
- 博耳电力控股有限公司环境、社会及管治报告 2019.pdf
- 上海实业控股有限公司二零一九年环境、社会及管治报告.pdf
- 伟鸿集团控股有限公司2019 年环境、社会及治理报告.pdf
- 英皇集团(国际)有限公司2019、2020年环境、社会及管治报告.pdf
- 北控城市资源集团有限公司2019年环境、社会及管治报告.pdf
- 凯知乐国际控股有限公司2019环境、社会及管治报告.pdf
- 维亚生物科技控股集团2019 环境、社会及管治报告.pdf
- 红星美凯龙家居集团股份有限公司2019环境、社会及管治报告.pdf
文档评论(0)