Loading... > **feof 函数文档** **函数概要:** feof 函数用于检测文件的末尾指示器(end-of-file indicator)是否被设置。 **函数原型:** ```C #include <stdio.h> ... int feof(FILE *stream); ``` **参数解析:** | **参数** | **含义** | | ---------- | ------------------------------------------------------ | | stream | 该参数是一个 FILE 对象的指针,指定一个待检测的文件流 | **返回值:** 1. 如果检测到末尾指示器(end-of-file indicator)被设置,返回一个非 0 值; 2. 如果检测不到末尾指示器(end-of-file indicator)被设置,返回值为 0。 **备注:** 1. feof 函数仅检测末尾指示器的值,它们并不会修改文件的位置指示器。 2. 文件末尾指示器只能使用 [clearerr](http://bbs.fishc.com/thread-91299-1-1.html) 函数清除。 **演示:** ```C #include <stdio.h> #include <stdlib.h> int main(void) { FILE *fp; int ch; if ((fp = fopen("file.txt", "r")) == NULL) { printf("打开文件失败!\n"); exit(EXIT_FAILURE); } while (1) { ch = fgetc(fp); if (feof(fp)) { break; } putchar(ch); } fclose(fp); return 0; } ``` ![](https://blog.fivk.cn/usr/uploads/2021/02/1176768182.png) 考考你,为啥小甲鱼这里不直接将 while 循环写成下面这样: ```C …… while (!feof(fp)) { putchar(getc(fp)); } …… ``` 最后修改:2021 年 09 月 12 日 © 转载自他站 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏