HEX 関数

目的

変数 x の 16 進表現を含む文字列を返します。

構文

HEX(x,y)

パラメーター

x は変数であり、y は式です。この式は、非可変長文字型でなければなりません。

説明

HEX は、x を含むバイトの 16 進表現を返します。パラメーター x のみが指定されている場合の長さは 2 * size(x)、すなわち HEX(x) になります。もう 1 つのパラメーターも指定されている場合、すなわち HEX(x,y) である場合、8 文字ずつの組の間に y が挿入された状態で y を含む 16 進文字列が返されます。その場合の長さは 2 * size(x) + ((size(x) - 1)/4) となります。

データ型 Fixed Binary、Pointer、Offset、および Char Varying の出力文字列 (先頭 2 バイトの固定 BIN サイズ フィールドに適用される) の出力文字列は、ビッグエンディアン形式で作成されます。

注: これら 4 つのデータ型を含む配列および構造体の 16 進表現は、ネイティブ形式で作成されます。

HEX 関数は、記憶域内での x の厳密なイメージを返すわけではありません。厳密なイメージが必要な場合は、HEXIMAGE 組み込み関数を使用します。

dcl s char (32) varying;

   s = 'The witch cast a terrible spell.';
   
    put skip list (hex(s));
    put skip list (hex(s,'+'));

次のように表示されます。

002054686520776974636820636173742061207465727269626C65207370656C6C2E
00205468+65207769+74636820+63617374+20612074+65727269+626C6520+7370656C+6C2E

制約事項

なし。