ファイル データ

ファイル定数は、Open PL/I によって維持される内部データ構造であるファイル制御ブロックで表されます。ファイル制御ブロックは、開いたり閉じたりすることができるため、オペレーティング システムで認識されている各種のファイルおよびデバイスに接続できます。次に例を示します。

DECLARE F FILE;

この例では、F は、ファイル制御ブロックを指定するファイル定数です。そのファイル制御ブロックは、開閉でき、オペレーティング システムで認識されている各種のファイルおよびデバイスに対して入出力を実行するために使用できます。

ファイル変数は、内部的には、ファイル制御ブロックへのポインターを含むロングワードとして表されます。ファイル変数の値は、評価すると、関連付けられているファイルの制御ブロックのアドレスになります。

ファイル変数には任意のファイル値を代入できます。ファイル変数は、FILE 属性と VARIABLE 属性の両方を使用して宣言します。次に例を示します。

DECLARE G FILE VARIABLE; 
DECLARE F FILE; 
   .
   .
   .
   G = F;

前の例では、G は、ファイル定数 F の値が代入されるファイル変数です。代入後は、両方とも F に属するファイル制御ブロックを指すため、G に対する操作は F に対する操作と同じになります。

ファイル値については、代入、等しいかどうかの比較、引数としての受け渡し、関数からの取得は可能ですが、計算や変換は実行できず、ストリーム入出力で送信することもできません。