标准 I/O 操作详解
1. 重置流与错误检查
在进行流操作时,有时需要将流的位置重置到起始点。可以使用如下代码实现:
errno = 0;
rewind (stream);
if (errno)
/* error */
上述代码先将 errno 置为 0,然后调用 rewind 函数将流 stream 的位置重置到起始位置。如果 errno 不为 0,则表示操作过程中出现了错误。
2. 获取当前流位置
fseek 函数不会返回更新后的流位置,为了获取当前流位置,标准 I/O 提供了两个函数:
2.1 ftell 函数
#include <stdio.h>
long ftell (FILE *stream);
ftell 函数返回流 stream 的当前位置。若操作出错,它返回 -1 并设置相应的 errno 。
2.2 fgetpos 函数
#include <stdio.h>
int fgetpos (FILE *stream, fpos_t *pos);
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



