はじめての C

う〜、ペースが なかなか 元に 戻らないヨ ... (;_;)
リハビリも 兼ねて、気になる page を 訳してみます。
http://www.tofla.iconbar.com/tofla/c/cfy13
内容は、ファイルを 操作する 関数の 多くが なぜ 引数に ポインタを 用いるのか、という 解説。 知らない 関数も でてくるけど、あとで 調べることにして ...

この 数ヵ月間、ファイル操作の 基本を 扱ってきましたが、一つ 触れなかった ところが あります。

もし、小さな ファイルだけで 済むなら、プログラムを スタートさせ そこに データを 入れて、実行時には 何らかの 必要な 変更を 加え、プログラムの 終了時に 全ての ファイルを 再び 保存することは、 たぶん 十分に うまく いくでしょう。

これは、ファイルの サイズが 制限されて いたからこそ、うまく 動いたのです。 でも、もし その大きさが 増えるようなことが 起こったら ?

ハードウェアに まだ 余裕が あったとしても、実行速度が 少しずつ 遅くなるのに 気がつくと 思います。

それが マルチタスク (並行処理) の プログラムだったら、他の プログラムを 動かすための メモリが 目に見えて 減っていくのが わかるはずです。

ついには、ハードウェアの メモリを 使いきってしまう 段階にまで いきつき、これ以上 どんな データも 加えることが できなくなって しまいます。

これらの 問題を 解決するには、ファイルや その ランダムな 断片を 不規則に leap させ、終了時に 再度 同じように それらを 保存できるように しないと いけません。

C には、このことを 考慮に いれた 機能が あります。 でも、最良の 結果を 得るためには、file format に ちょっと 変更を 加えるための 準備を しておく 必要が あります。