ファイル変数は、ファイル値を代入できる変数です。ファイル変数の値は、引数として渡されたファイル定数を受け取るか、関数の値としてファイル定数を受け取るか、または単純な代入によって指定できます。ファイル変数は、VARIABLE 属性を使用して宣言します。次に例を示します。
DECLARE G FILE; DECLARE F FILE; DECLARE V FILE VARIABLE; V=F; ... V=G;
この例では、F および G はファイル定数であり、それぞれに関連付けられたファイル制御ブロックがあります。V は、ファイル値を代入できるファイル変数です。1 回目の代入後は、F と V の両方が同じファイル制御ブロックを指します。V に対して実行する操作は、F に対して実行する同じ操作に相当します。2 回目の代入後は、V と G の両方が同じファイル制御ブロックを指すため、V に対して実行する操作は、G に対して実行する同じ操作に相当します。
パラメーターとして使用されるファイル名は、ファイル変数であり、対応する引数と同じファイル制御ブロックを指します。