DOUBLE INTEGER in linksbündigen STRING
Dieser Befehl wandelt einen Wert vom Datentyp DINT in einen linksbündigen Wert vom Datentyp STRING in Dezimaldarstellung um.
Eingang
Eingangsdatentyp
Ausgang
Umwandlungsergebnis
Erläuterung
Verwendete Funktion |
String1 definiert als |
Ergebnis |
---|---|---|
String1:= DINT_TO_STRING_LEFT_ALIGNED(-12345678) |
STRING[2] |
'-1' |
STRING[4] |
'-123' |
|
STRING[6] |
'-12345' |
|
STRING[8] |
'-1234567' |
|
STRING[10] |
'-12345678' |
|
STRING[12] |
'-12345678' |
|
und so weiter ... |
Bei der Verwendung des Datentyps STRING mit Kleinsteuerungen wie FP-e oder FP0 müssen Sie darauf achten, dass die Länge der Ergebniszeichenfolge mindestens so groß ist wie die Länge der Ausgangszeichenfolge.
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
diInputValue: DINT:=12345678;
sResult: STRING[11]:='';
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,DINT_TO_STRING_LEFT_ALIGNED!,,14,1,30,3,,?D?C);
B(B_VARIN,,diInputValue,12,1,14,3,);
B(B_VAROUT,,sResult,30,1,32,3,);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
sResult:=DINT_TO_STRING_LEFT_ALIGNED(diInputValue);