C语言文件操作常用函数详解.doc

C语言文件操作常用函数详解.doc

ID:53837986

大小:66.50 KB

页数:8页

时间:2020-04-08

C语言文件操作常用函数详解.doc_第1页
C语言文件操作常用函数详解.doc_第2页
C语言文件操作常用函数详解.doc_第3页
C语言文件操作常用函数详解.doc_第4页
C语言文件操作常用函数详解.doc_第5页
资源描述:

《C语言文件操作常用函数详解.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、.C语言文件操作详解在C语言文件操作的过程中,通常有以下几种方式:1.单个字符的操作:fputc函数原型:intfputc(intc,FILE*fp);功能:把一字节代码c写入fp指向的文件中返回值:正常,返回c;出错,为EOF(-1)fgetc函数原型:intfgetc(FILE*fp);功能:从fp指向的文件中读取一字节代码返回值:正常,返回读到的代码值;读到文件尾或出错,为EOF(-1)feof函数原型:intfeof(FILE*fp);功能:判断文件是否到末尾返回值:文件未结束,返回0;文件结束,返回真(非0

2、)示例:#include#includevoidmain(){charch;FILE*fp1=fopen("d:\a.dat","wb");/*以写的方式打开二进制文件*/FILE*fp2;if(NULL==fp1){printf("Cannotopenthisfile!");exit(0);}printf("pleaseinputastring:");ch=getchar();while(ch!='#')/*输入#号结束*/{fputc(ch,fp1);/*依次向文件中写

3、*/ch=getchar();}fflush(stdin);/*清空输入缓冲区*/fclose(fp1);/*关闭文件*/fp2=fopen("d:\a.dat","rb");/*以读的方式打开二进制文件*/if(NULL==fp2){printf("Cannotopenthisfile!");exit(0);..}while(!feof(fp2))/*判断是否到达文件末尾*/{ch=fgetc(fp2);/*从文件中依次读取*/putchar(ch);}putchar('');fflush(stdout)

4、;/*清空输出缓冲区*/fclose(fp2);/*关闭文件*/}注意:putc(ch,fp)与fputc(ch,fp)效果一致,但是putc可以作为宏替换,速度更快getc(fp)与fgetc(fp)效果一致,但是getc可以作为宏替换,速度更快putchar(c)则是fputc(c,stdout)getchar()则是fgetc(stdin)1.对字符串的操作:char*fgets(char*s,intn,FILE*fp)intfputs(char*s,FILE*fp)功能:fgets:从fp指向的文件中读一个长

5、度为n的字符串,保存到s中。其中char*s要是已经有内存空间的,通常是用数组定义的,或者用char*则要用malloc分配内存。fputs:向fp所指向的文件中写入字符串s。返回值:fgets:正常时返回读取字符串的首地址;出错或文件尾,返回NULLfputs:正常时返回写入的最后一个字符;出错为EOF(-1)示例:#include#include#includevoidmain(){FILE*fp;charstring[100];if((fp=fopen(

6、"file.txt","w"))==NULL){printf("cann'topenthisfile!");exit(0);}while(strlen(gets(string))>0)/*从键盘输入字符串,回车停止*/{fputs(string,fp);/*将字符串写入文件*/fputs("",fp);/*在最后加上一个’’*/..}fclose(fp);if((fp=fopen("file.txt","r"))==NULL){printf("cann'topenthisfile!");exit(0)

7、;}while(fgets(string,10,fp)!=NULL)/*判断是否到达文件末尾*/fputs(string,stdout);/*等价于puts(string);*/fclose(fp);}1.对二进制形式的块读写:函数原型:size_tfread(void*buffer,size_tsize,size_tcount,FILE*fp);size_tfwrite(void*buffer,size_tsize,size_tcount,FILE*fp);功能:读/写数据块fread与fwrite一般用于二进制文

8、件的输入/输出fread:从fp所指向的文件中读取count个块,每个块的长度为size个字节,存放到以buffer为首地址的内存中。其中buffer必须已经是由内存空间的。fwrite:从以buffer为首地址的内存中读取count个块,每个块的长度为size个字节,写入到fp所指向的文件中。返回值:成功,返回读/写的块数;出错或文件尾,返回

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。