我注意到有两种方法可以返回到文件的开头
FILE *fp = fopen("test.bin", "r")
fseek(fp, 0, SEEK_END);
rewind(fp);
和
FILE *fp = fopen("test.bin", "r")
fseek(fp, 0, SEEK_END);
fseek(fp, 0, SEEK_SET);
如果这些方法之间有什么区别的话?
它们基本上是两种不同的方法来完成相同的事情:将指针设置到文件的开头。唯一的区别是rewind
还清除了错误指示符。
如果可以选择,您应该使用fseek
。这是因为rewind
不会返回指示操作是否成功的整数。
如果fseek()
返回成功,它也会清除文件结束指示符,而rewind()
不会清除