STRING (Dezimal-Format) in vorzeichenlosen INTEGER
STRING_TO_UINT wandelt eine Zeichenfolge im Dezimalformat in einen Wert vom Datentyp vorzeichenloser 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 UINT umgewandelt . Dieses Unterprogramm wird auch von den Funktionen STRING_TO_INT, STRING_TO_WORD, STRING_TO_UDINT und STRING_TO_DWORD verwendet.
Eingang
Eingangsdatentyp
Ausgang
Umwandlungsergebnis
Zulässiges Format:
´[Leerzeichen][Vorzeichen][Dezimalzahl][Leerzeichen]´ z.B. ' 123456 '
Zulässige Zeichen:
Leerzeichen
Leerzeichen ""
Vorzeichen
"+“ (plus), "-" (minus)
Dezimalzahl
Dezimalzahlen "0" - "9"
Die Analyse endet mit der ersten Nicht-Dezimalzahl.
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
UINT_value: UINT:=0;
STRING_value: STRING[8]:='543';
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_VARIN,,STRING_value,13,2,15,4,);
B(B_VAROUT,,UINT_value,24,2,26,4,);
B(B_F,STRING_TO_UINT!,Instance,15,2,24,4,,?D?C);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
UINT_value:= STRING_TO_UINT(STRING_value);