変更の始まり

自由形式ステートメント

変更の始まりソースの先頭行に **FREE が含まれている場合、ソースは完全自由形式であり、1 桁目から行末までの任意の桁に自由形式ステートメントを指定することができます。 行の長さに制限はありません。変更の終わり

変更の始まりそうでない場合は、ソースは桁制限付きであり、自由形式ステートメントは 8 桁目から 80 桁目までにコーディングされます。 6-7 桁目はブランクでなければなりません。変更の終わり

ほとんどの場合、自由形式ステートメントは、 CTL-OPT、DCL-F、DCL-DS、READE、または DCL-PROC などの命令コードで始まります。

場合によっては、命令コードの指定は不要です。
  • 演算ステートメントでは、ステートメントの最初にある名前 が自由形式演算内でサポートされている命令コードのいずれかと同じでない限り、 EVAL 命令コードおよび CALLP 命令コードは省略されます。 例えば、代入のターゲットの名前が READ である場合は、EVAL 命令コード が必要です。
  • サブフィールドの定義では、サブフィールドの名前が自由形式演算内でサポートされている 命令コードのいずれかと同じでない限り、DCL-SUBF 命令コードは省略可能です。
  • パラメーターの定義では、パラメーターの名前が自由形式演算内でサポートされている 命令コードのいずれかと同じでない限り、DCL-PARM 命令コードは省略可能です。

自由形式ステートメントはセミコロンで終わります。

変更の始まり通常、自由形式の行で // の後にあるすべてのテキスト は注記と見なされます。 ただし、// が文字リテラルの中にある場合は、リテラルの一部であると見なされます。 次の例では、  1  2 、 および  4  は注記ですが、  3  は、// がリテラルの中にあるため注記ではありません。変更の終わり

変更の始まり注記ではないコードの後に続いて同じ行にある // は、行末コメントと呼ばれることもあります。  2  および  4  の注記 は行末コメントです。
  // comment  1 
  DCL-S string // comment  2 
        CHAR(10);
  string = 'abc // not-comment  3  +
           'def'; // comment  4 
変更の終わり

自由形式演算内での使用をサポートされている命令コードのリストについては、 命令コードを参照してください。

変更の終わり