愛しの Fortran・3改

Fortran について気の向くままに綴ります

書式付き流れ探査入出力 (その1)

時期は熟した?

2021 年現在、Fortran 2003 で導入された書式付き流れ探査入出力 (formatted stream output) はあまり使われていません。 従来使われている書式付き順番探査入出力と、ほぼ上位互換で機能が拡充されているので、 使わない手はありません。

なお、書式なし流れ探査入出力 (unformatted ー) はすでに各方面で便利に使われているところです。

以下、説明の都合上

  • 書式付き流れ探査出力で作ったファイルを書式付き流れファイル、
  • 書式付き順番探査出力で作ったファイルを書式付き順番ファイル

と呼びます。

主な不都合は次の 2 つ。

  1. 書式付き順番探査入出力による書式付き流れファイルの読み書き、 書式付き流れ探査入出力による書式付き順番探査ファイルの読み書きは保証されていない。
  2. 入出力文既定の「*」装置は書式付き順番探査入出力。これを書式付き流れ探査入出力にはできない。

特に 1. は深刻です。 規格では書式付き順番探査で読み書きできるファイルを 書式付き流れ探査入出力で読み書きできるかは処理系依存としています。 しかし、現実には 2021 年現在では実用されるすべての Fortran 処理系で書式付き流れファイルと 書式付き順番探査ファイルとは同じものです。 両方の実装が必須である以上、今後、新規の処理系で両者の互換性を欠く実装は考えにくい。 なので 1. の問題は事実上解消されたと考えます。

そこで利用普及をはかって書式付き流れ探査入出力について詳細を説明していきたいと思います。

(つづく)