$ZLASCII (ObjectScript)
4 バイト文字列を数値に変換します。
構文
$ZLASCII(string,position)
$ZLA(string,position)
引数
引数 | 説明 |
---|---|
string | 値、変数、式として指定できる文字列。長さは 4 バイト以上でなければなりません。 |
position | オプション — 文字列の開始位置。既定値は 1 です。 |
概要
$ZLASCII が返す値は、使用する引数によって異なります。
-
$ZLASCII(string) は、string の最初の文字位置から開始して、4 バイト文字列を数値に変換して返します。
-
$ZLASCII(string,position) は、position で指定された開始位置から始まる 4 バイトの文字列を数値に変換して返します。
正常に終了すると、$ZLASCII は常に正の整数を返します。$ZLASCII は、string の長さが無効の場合、または position の値が無効の場合に、-1 を返します。
$ZLASCII と $ASCII
$ZLASCII は、シングル 8 ビット・バイトではなく 4 バイト (32 ビット) の単語を操作すること以外は、$ASCII と同じです。2 バイト (16 ビット) の単語には $ZWASCII を使用し、8 バイト (64 ビット) の単語には $ZQASCII を使用します。
$ZLASCII(string,position) の機能は、以下と同等です。
$ASCII(string,position+3)*256 + $ASCII(string,position+2)*256 + $ASCII(string,position+1)*256 + $ASCII(string,position)
$ZLASCII と $ZLCHAR
$ZLCHAR 関数は、論理的には $ZLASCII 関数の逆です。例えば以下のようになります。
SET x=$ZLASCII("abcd")
WRITE !,x
SET y=$ZLCHAR(x)
WRITE !,y
“abcd” を指定すると、$ZLASCII は 1684234849 を返し、1684234849 を指定すると、$ZLCHAR は “abcd” を返します。