ferror函数用法详解
ferror函数简介
- 头文件包含
#include <stdio.h>
- 函数定义
void clearerr(FILE * stream );
int feof(FILE * stream );
int ferror(FILE * stream );
int fileno(FILE * stream );
ferror函数常见使用错误
- 编译错误
warning: implicit declaration of function ‘ferror’ [-Wimplicit-function-declaration]
解决办法:包含头文件
#include <stdio.h>
ferror函数详细描述
函数clearerr ()清除stream 指向的流的文件结束和错误指示符
函数feof ()测试stream 指向的流的文件结束指示器,如果设置了该指示器,则返回非零。文件结束指示器只能通过函数clearerr ()清除
函数ferror ()测试stream 指向的流的错误指示符,如果设置了该指示符,则返回非零。只能通过clearerr ()函数重置错误指示器。
函数fileno ()检查参数stream并返回用于实现此流的整数文件描述符。文件描述符仍然由stream拥有,当fclose (3)被调用时将被关闭。在将文件描述符传递给可能关闭它的代码之前,使用dup (2)复制该文件描述符。
有关非锁定对应项,请参见unlocked_stdio (3)
ferror函数错误码
这些函数不应该失败,也不应该设置外部变量errno (但是,如果fileno ()检测到它的参数不是有效的流,它必须返回-1并将errno设置为EBADF )
评论区