欢迎来到天天文库
浏览记录
ID:51777099
大小:82.83 KB
页数:8页
时间:2020-03-07
《C语言程序设计 教学课件 作者 孙鸿飞 刘国成 主编ch11.pptx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、11.1文件概述11.2文件的打开与半闭11.3文件的读/写11.4文件的定位第11章文件11.1概述文件:“文件”的概念是指存储在外部介质上一组相关数据的集合分类函数名称功能打开文件fopen()打开文件关闭文件fclose()关闭文件文件读写fgetc()从指定文件读出一个字符fputc()把字符输出到指定文件fgets()从指定文件读出一个字符串fputs()把字符串输出到指定文件中fread()从指定文件中读取记录fwrite()把记录写入到指定文件中fscanf()从指定文件按格式输入数据fprintf()按指定格式将数据输出到指定文件中文件定位feof()位置指针若到文件末
2、尾,函数返回值为非0fseek()改变文件的位置指针rewind()使文件位置指针重新置于文件开头ftell()返回文件位置指针的当前值文件状态ferror()若文件操作出现错误,函数返回值为非0clearerr()使ferror()和feof()重置为011.2文件的打开与关闭11.2.1文件指针#ifndef_FILE_DEFINEDstruct_iobuf{char*_ptr;int_cnt;char*_base;int_flag;int_file;int_charbuf;int_bufsiz;char*_tmpfname;};typedefstruct_iobufFILE;#d
3、efine_FILE_DEFINED#endif说明:1.FILE是一个结构体2.定义FILE类型的指针变量:FILE*fp;fp一般称之文件指针11.2.2文本文件与二进制文件0011001100110010001101110011011000110111‘3’‘2’‘7’‘6’‘7’0111111111111111存储数32767的方法以文本方式存储以二进制方式存储11.2.3文件的打开打开文件格式FILE*fp;fp=fopen("文件名","打开文件方式");fp=fopen("sample.txt","r");/*表示以只读方式打开sample.txt文件*/“r+/rb+”
4、(读写)“a/ab”(追加)“w/wb”(只写)“r/rb”(只读)“w+/wb+”(读写)“a+/ab+”(读写)为输入打开一个文本/二进制文件为输出打开或建立一个文本/二进制文件为读/写打开一个文本/二进制文件为读/写建立一个文本/二进制文件为读/写打开或建立一个文本/二进制文件向文本/二进制文件尾追加数据文件使用方式含义11.2.4文件的关闭用fclose函数关闭文件。格式:fclose(文件指针变量);...main(){FILE*fp;...if((fp=fopen(文件名,"打开方式"))==NULL){printf("cannotopenthisfile");exit
5、(1);}...fclose(fp);/*关闭文件*/}11.3文件的读/写fgetc与fputc函数主要用于单字符的输入与输出。fread与fwrite函数主要实现块的输入与输出。fscanf与fprintf的主要功能是实现格式化的输入与输出。fgets函数与fputs函数实现行的输入与输出。11.4文件的定位1.feof函数feof函数格式:feof(文件指针);作用:判断位置指示器是否到达文件尾,如果到达文件尾,函数返回非零值。2.rewind函数使文件位置指示器移向文件开始的方法通常有两种:其一,先关闭文件再打开文件;其二,使用rewind()函数,在不关闭文件的情况下设置位置
6、指示器指向文件开始。显然,后一种方法的效率更高。rewind函数的功能是把文件内部的位置指示器指向文件首。其调用形式为:rewind(文件指针);3.ftell函数ftell函数的原型为:longftell(FILE*stream);用ftell函数可以得到当前位置。ftell函数的作用是得到文件位置指示器的当前位置,用相对于文件开头的偏移量来表示。如果ftell函数返回值为-1L,表示出错。其调用形式为:ftell(文件指针);4.fseek函数fseek函数用于将文件位置指示器从起始位置起移动指定的偏移量,其一般格式为:fseek(文件指针,偏移量,起始位置);其中偏移量指以起始位
7、置为基点移动的字符数。它是long型数据。起始位置有三种表示方式:①0或SEEK_SET,表示文件头;②1或SEEK_CUR,表示文件当前位置;③2或SEEK_END,表示文件尾;位置指针设置成功返回0,否则返回非0。
此文档下载收益归作者所有