17

ファイルの先頭に戻るには 2 つの方法があることに気付きました

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);

これらの方法の間に違いがある場合はどうなりますか?

4

2 に答える 2

20

これらは基本的に同じことを達成するための2つの異なる方法です:ファイルの先頭にポインタを設定します。唯一の違いはrewind、エラーインジケータもクリアすることです。

選択肢があれば、を使用する必要がありますfseek。これはrewind、操作が成功したかどうかを示す整数を返さないためです。

于 2012-08-07T04:00:10.070 に答える
3

が成功を返した場合fseek()、ファイル終了インジケータもクリアしますが、rewind()そうしません。

于 2012-12-21T00:51:36.280 に答える