STRING_TO_UDINT

STRING (Dezimal-Format) in vorzeichenlosen DOUBLE INTEGER

STRING_TO_UDINT wandelt eine Zeichenfolge im Dezimalformat in einen Wert vom Datentyp vorzeichenloser DOUBLE INTEGER um.

Zunächst wird die Zeichenfolge in einen Wert vom Datentyp STRING[32] umgewandelt. Das Ergebnis wird anschließend (von einem Unterprogramm mit ca. 270 Schritten) in einen Wert vom Datentyp UDINT umgewandelt . Dieses Unterprogramm wird auch von den Funktionen STRING_TO_INT, STRING_TO_WORD, STRING_TO_UDINT und STRING_TO_DWORD verwendet.

Anmerkungen

Zulässiges Format: ´[Leerzeichen][Vorzeichen][Dezimalzahl][Leerzeichen]´ z.B. ' 123456 '

Zulässige Zeichen:

  • Leerzeichen

    Leerzeichen ""

  • Vorzeichen

    "+“ (plus), "-" (minus)

  • Dezimalzahlen

    Dezimalzahlen von "0 - 9“

Die Analyse endet mit der ersten Nicht-Dezimalzahl.

Parameter

Eingang

Unnamed input (STRING)

Eingangsdatentyp

Ausgang

Unnamed output (UDINT)

Umwandlungsergebnis

Beispiel

POE-Kopf

Im POE-Kopf werden alle Ein- und Ausgangsvariablen deklariert, die für die Programmierung dieser Funktion verwendet werden. Für alle Programmiersprachen wird der gleiche POE-Kopf verwendet.

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

KOP-Rumpf

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-Rumpf

UDINT_value := STRING_TO_UDINT(STRING_value);

Letzte Änderung am: 2023-08-17Feedback zu dieser SeitePanasonic Hotline