0

FILE *互いに並行して操作するには、2 つのファイル ポインター ( ) が必要です。1 つは追加操作を適用するためのもので、もう 1 つは読み取りと上書きのためのものです。

あるポインターからファイルに追加して、他のファイルポインターによって認識されるようにする必要があります。これにより、他のファイルポインターは、この追加されたデータを正しく読み取って上書きできます。

データを同期するためfflush()に、追加ファイルポインタでの使用が機能するように見えますが(少なくとも読み取りでは機能します)、これは私が望むものを達成する正しい方法であり、移植可能ですか?

ありがとうございました。

4

1 に答える 1

3

1つのポインターでそれを実行できるはずです(したがって、不必要に同期する必要はありません)。fseek(f, SEEK_END, 0);最後に追加したいときに使うだけです。「rb+」を使用して、ファイルを読み取りおよび書き込み可能にします。

ファイルへのアクセスに複数のスレッドを使用しない限り、これは問題なく機能するはずです。

于 2013-01-01T21:22:50.290 に答える