码迷,mamicode.com
首页 > 编程语言 > 详细

C++基础

时间:2019-05-29 18:19:02      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:color   family   nbsp   判断   使用   意义   文件的   文本文件   文本   

1.fgets、feof用法


  char *fgets(char *s, int size, FILE *stream);

    [1]该函数每次读取一行,读到‘\n‘时结束,或者读到EOF时结束。

    [2]最多读取size - 1个字节,留一个字节设置‘\0‘,如果一行的长度大于size - 1,则下次读取时继续读取当前行。

    [3]函数成功返回s,失败返回NULL;如果读到了EOF,则eof指示器被设置,如果只读到了EOF则返回NULL,否则还是返回s。所以返回NULL时需要继续使用ferror()来判断是读取失败还是读到结尾。

  int feof(FILE *stream);

    读函数(例如fread、fgets)第一次读到了EOF时,会设置eof指示器。

    [1]该函数检查文件的eof指示器是否设置,如果设置则返回1,否则返回0。

    [2]该函数可以判断文本文件和二进制文件。

  问题:

    [1]调用feof()的意义是判断之前的读函数是否设置了eof指示器,即之前是否已经读到了结尾。如果一次都没有读就调用此函数,则该函数固定返回0,因为没有读就不会设置eof指示器。

 

 

 

 

 

  

 

C++基础

标签:color   family   nbsp   判断   使用   意义   文件的   文本文件   文本   

原文地址:https://www.cnblogs.com/iamwho/p/10945267.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!