概要
10進数の文字列を整数値に変換する関数です。パラメータ2の10進数文字列を整数値に変換し、パラメータ1に格納します。
書式
_decasc2bin (変換先アドレス, 変換元データバッファ)
パラメータ1 : 内部デバイス、テンポラリアドレス
パラメータ2 : データバッファ
記述例1(ビット長が16ビットの場合)
_decasc2bin ([w:[#INTERNAL]LS0100], databuf0)
databuf0 の内容が次のような場合
上記データを変換すると次のようになります。
記述例2(ビット長が32ビットの場合)
_decasc2bin ([w:[#INTERNAL]LS0100], databuf0)
databuf0 の内容が次のような場合
上記データを変換すると次のようになります。
変換後のビット長が、Dスクリプトエディタのビット長を超えるような場合はエラーになります。
例)スクリプトのビット長が16ビット長の場合
_strset (databuf0, "123456") //誤って6桁の10進文字列をセット
_decasc2bin ([w:[#INTERNAL]LS0100], databuf0)
上記式を実行したときに、文字列エラーステータス[e:STR_ERR_STAT]のエラー番号2(文字列変換エラー)が発生します。ただし、エラーが発生するとメイン関数の先頭に戻るので、_decasc2bin()実行直後に参照はできません。(命令が呼び出された関数の中にある場合、呼び出し元の関数の呼び出された次の行に戻ります。)
変換する文字列に“0”~“9”以外の文字を含む文字列データを変換したときはエラーとなります。
例)スクリプトのビット長が16ビット長の場合
_strset (databuf0, "12AB") //誤って10進数以外の文字列をセット
_decasc2bin ([w:[#INTERNAL]LS0100], databuf0)
上記式を実行したときに、文字列エラーステータス[e:STR_ERR_STAT]のエラー番号2(文字列変換エラー)が発生します。ただし、エラーが発生するとメイン関数の先頭に戻るので、_decasc2bin( )実行直後に参照はできません。(命令が呼び出された関数の中にある場合、呼び出し元の関数の呼び出された次の行に戻ります。)
エラーが発生した段階で処理が終了し、メイン関数の先頭に戻ります。(命令が呼び出された関数の中にある場合、呼び出し元の関数の呼び出された次の行に戻ります。)