STRING_TO_UDINT

STRING型(10進形式)からUDINT型への変換

STRING_TO_UDINT命令は、10進形式のSTRING型データをUDINT型(符号なしダブルワード整数)の値に変換します。

まず、文字列をSTRING[32]型に変換し、続いて、約270ステップのサブプログラムによって、UDINT型の値に変換します。このサブプログラムは、STRING_TO_INTSTRING_TO_WORDSTRING_TO_UDINTSTRING_TO_DWORDの各命令でも使用されます。

解説

指定できるフォーマット: '[スペース][符号][10進数][スペース]' 例 ' 123456 '

使用できる文字:

  • スペース

    スペース ""

  • 符号

    "+"(プラス)、"-"(マイナス)

  • 10進数

    10進数"0~9"

変換は、10進数以外の文字の前で終了します。

パラメータ

入力

未定義入力 (STRING)

入力データ型

出力

未定義出力 (UDINT)

変換結果

POUヘッダ

POUヘッダには、このプログラムで使用するすべての入力変数と出力変数を宣言します。 POUヘッダは全プログラム言語で使用できます。

	VAR
		UDINT_value: UDINT:=0;
		STRING_value: STRING[10]:='3147483647';
	END_VAR

LDボディ

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

STボディ

UDINT_value := STRING_TO_UDINT(STRING_value);

最終修正日: 2023-08-17このページに関するフィードバックお問い合わせ窓口