我是靠谱客的博主 糟糕楼房,最近开发中收集的这篇文章主要介绍C文件操作——ftell函数_ferror函数_clearerr函数_rewind函数一:文件位置指针的当前值ftell函数二:文件操作判断ferror函数三:使ferror和feof()函数值置零clearerr函数四:使文件位置指针重新至于文件开头rewind函数,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

文章目录:

一:文件位置指针的当前值ftell函数

二:文件操作判断ferror函数

三:使ferror和feof()函数值置零clearerr函数

四:使文件位置指针重新至于文件开头rewind函数


一:文件位置指针的当前值ftell函数

在文件末尾移动文件指针后,我们可以使用ftell()函数获取文件的总大小
可以使用SEEK_END常量来将文件指针移动文件末尾。


函数作用:
    得到流式文件中的当前位置,用相对于文件开头的位移量来表示。

返回值:
    返回当前位置,出错时返回-1L。

应用举例:
    i = ftell(fp);
    if(i == -1L)  printf(“errorn”);
#include <stdio.h>  

void main() {
    FILE *fp;
    int length;

    fp = fopen("myfile.txt", "r");
    fseek(fp, 0, SEEK_END);

    length = ftell(fp);

    fclose(fp);
    printf("Size of file: %d bytes", length);

}


执行上面示例代码后,得到以下结果
Size of file: 15 bytes

二:文件操作判断ferror函数

出错检测 

调用形式:
    ferror(fp);

返回值:
    返回0,表示未出错;返回非0,表示出错。

注意:
    在调用一个输入输出函数后立即检查ferror函数的值,否则信息会丢失。
    在执行fopen函数时,ferror函数的初始值自动置为0。 

三:使ferror和feof()函数值置零clearerr函数

调用形式:
    clearerr(fp);

函数作用:
    使文件错误标志和文件结束标志置为0

只要出现错误标志,就一直保留
直到对同一文件调用clearerr函数或rewind函数,或任何其他一个输入输出函数。

四:使文件位置指针重新至于文件开头rewind函数

让文件指针的位置回到文件的起始位置,在需要多次使用流时,这就很有用

void rewind ( FILE * stream );
#include<stdio.h>   
void main() {
    FILE *fp;
    char c;

    fp = fopen("string-file.txt", "r");
    while ((c = fgetc(fp)) != EOF) {
        printf("%c", c);
    }

    rewind(fp); // moves the file pointer at beginning of the file  
    // 不用重新打开文件,直接从头读取内容
    while ((c = fgetc(fp)) != EOF) {
        printf("%c", c);
    }

    fclose(fp);

}


string-file.txt
his is rewind()function from yiibai tutorials.



执行上面示例代码后,得到以下结果 
this is rewind()function from yiibai tutorials.
this is rewind()function from yiibai tutorials.

如上所示,rewind()函数将文件指针移动到文件的开头

这就是为什么文件string-file.txt中的内容被打印2

如果不调用rewind()函数,文件中的内容将只打印一次

最后

以上就是糟糕楼房为你收集整理的C文件操作——ftell函数_ferror函数_clearerr函数_rewind函数一:文件位置指针的当前值ftell函数二:文件操作判断ferror函数三:使ferror和feof()函数值置零clearerr函数四:使文件位置指针重新至于文件开头rewind函数的全部内容,希望文章能够帮你解决C文件操作——ftell函数_ferror函数_clearerr函数_rewind函数一:文件位置指针的当前值ftell函数二:文件操作判断ferror函数三:使ferror和feof()函数值置零clearerr函数四:使文件位置指针重新至于文件开头rewind函数所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部