データ転送文において,I/O 並びは値を転送する要素を指定します。I/O 並びは,DO 形反復または変数の単純並び (大きさ引継ぎ配列を除く) です。
入力文では,I/O 並びは定数と式を含むことはできません。これらは,プログラム内で後に引用できる名前付きメモリー位置を指定していないからです。
しかし,出力文の I/O 並びは定数と式を含むことができます。これは,コンパイラが一時的なメモリー位置を使用して,I/O 文の実行中にこれらの値を保持しておくことができるためです。
入力項目がポインタである場合,確定可能な指示先に現在結合されていなくてはなりません。データはファイルから結合された指示先に転送されます。出力項目がポインタである場合,指示先に現在結合されていなくてはなりません。データは指示先からファイルに転送されます。
入力または出力項目が配列である場合,要素 (存在する場合) が配列要素順序で指定されたかのように扱われます。たとえば,ARRAY_A が形状 (2,1) の配列だった場合,以下の入力文は等価です。
READ *, ARRAY_A READ *, ARRAY_A(1,1), ARRAY_A(2,1)
ただし,その配列の要素が,入力並び中の式の値に影響を与えることはできず,1 つの入力並びに同じ要素が 2 度以上現れることはできません。たとえば,以下の入力文は無効です。
INTEGER B(50) ... READ *, B(B) READ *, B(B(1):B(10))
入力または出力項目が割付け配列である場合,その配列は現在割り付けられていなくてはなりません。
入力または出力項目が構造型である場合,以下の規則が適用されます。
すべての構造型成分は,I/O 文を含んでいる有効域に属していなくてはなりません。
構造型はポインタ構成要素を持っていてはなりません。
書式付き I/O 文では,構造型は,構造体のすべての要素が構造型定義中での順序で指定されたかのように扱われます。
書式なし I/O 文では,構造型は 1 つのオブジェクトとして扱われます。
以下の項では,「I/O 並び中の単純並び項目」と,「I/O 並び中の DO 形反復」について説明します。