リテラル

リテラルは、プログラム中で参照することのできる自己定義定数です。リテラルは、RPG IV データ・タイプのいずれかに含めることができます。

文字リテラル

文字リテラルを指定する場合の規則は次のとおりです。

16 進数リテラル

16 進数リテラルを指定する場合の規則は次のとおりです。

数字リテラル

数値リテラルを指定する場合の規則は次のとおりです。
浮動形式の数値リテラルは、異なった方法で指定されます。 浮動リテラルの形式は次のとおりです。
     <mantissa>E<exponent>

ここで、

     <mantissa> is a literal as described above with 1 to 16 digits
     <exponent> is a literal with no decimal places, with a value
                between -308 and +308
次のリストは、有効な浮動リテラルをいくつか例証したものです。
    1E1                = 10
    1.2e-1             = .12
    -1234.9E0          = -1234.9
    12e12              = 12000000000000
    +67,89E+0003       = 67890  (コンマは小数点です)
次のリストは、無効な浮動リテラルをいくつか例証したものです。
    1.234E                          <--- 指数がありません
    1.2e-                           <--- 指数がありません
    -1234.9E+309                    <--- 指数が大きすぎます
    12E-2345                        <--- 指数が小さすぎます
    1.797693134862316e308           <--- 値が大きすぎます
    179.7693134862316E306           <--- 値が大きすぎます
    0.0000000001E-308               <--- 値が小さすぎます

日付リテラル

日付リテラルは形式 D'xx-xx-xx' をとります。ここで、

時刻リテラル

時刻リテラルは形式 T'xx:xx:xx' をとります。ここで、

タイム・スタンプ・リテラル

変更の始まり タイム・スタンプ・リテラルの形式は Z'yyyy-mm-dd-hh.mm.ss' であり、 オプションで、その後に 1 個のピリオドとゼロ桁から 12 桁の 秒の小数部を続けることができます (Z'yyyy-mm-dd-hh.mm.ss.frac')。 各部の意味は次のとおりです。 変更の終わり

変更の始まり 例えば、Z'2014-12-03-11.41.52' には秒の小数部が 6 桁あり、Z'2014-12-03-11.41.52.000000' と等価です。 Z'2014-12-03-11.41.52.123' には秒の小数部が 3 桁あり、Z'2014-12-03-11.41.52.123000' と等価です。 Z'2014-12-03-11.41.52.1234567' には秒の小数部が 7 桁あり、 Z'2014-12-03-11.41.52.123456789012' には秒の小数部が 12 桁あります。 変更の終わり

図形リテラル

図形リテラルは形式 G'oK1K2i' をとります。ここで、

UCS-2 リテラル

UCS-2 リテラルは、形式 U'Xxxx...Yyyy' をとります。ここで、

UCS-2 リテラルは、モジュールのデフォルトの UCS-2 CCSID 内にあると想定されます。