rewind()究竟做了什么?

时间:2015-08-06 14:53:29

标签: c rewind

我遇到了C中的void rewind(FILE *stream)函数。我从here了解了它的描述和示例。

说明中提到了以下关于功能的内容:

  

C库函数rewind()将文件位置设置为给定流文件的开头。

我真的没有明白这个想法。我们可以把它想象成一个移动到要读取的文件中的光标,{{1}}只是将光标设置到文件的开头吗?

1 个答案:

答案 0 :(得分:4)

来自man page

  

rewind()函数将stream指向的流的文件位置指示符设置为文件的开头。它相当于:

      (void)fseek(stream, 0L, SEEK_SET)
     

除了流的错误指示符也被清除(参见          clearerr(3))。

因此,下次在调用rewind后读取文件时,您将从头开始阅读。所以你的光标类比是有效的。