STRING型(10進形式)からUDINT型への変換
STRING_TO_UDINT命令は、10進形式のSTRING型データをUDINT型(符号なしダブルワード整数)の値に変換します。
まず、文字列をSTRING[32]型に変換し、続いて、約270ステップのサブプログラムによって、UDINT型の値に変換します。このサブプログラムは、STRING_TO_INT、STRING_TO_WORD、STRING_TO_UDINT、STRING_TO_DWORDの各命令でも使用されます。
指定できるフォーマット: '[スペース][符号][10進数][スペース]' 例 ' 123456 '
使用できる文字:
スペース
スペース ""
符号
"+"(プラス)、"-"(マイナス)
10進数
10進数"0~9"
変換は、10進数以外の文字の前で終了します。
入力
入力データ型
出力
変換結果
POUヘッダには、このプログラムで使用するすべての入力変数と出力変数を宣言します。 POUヘッダは全プログラム言語で使用できます。
VAR
UDINT_value: UDINT:=0;
STRING_value: STRING[10]:='3147483647';
END_VAR
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_F,STRING_TO_UDINT!,Instance,15,1,25,3,,?D?C);
B(B_VARIN,,STRING_value,13,1,15,3,);
B(B_VAROUT,,UDINT_value,25,1,27,3,);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
UDINT_value := STRING_TO_UDINT(STRING_value);