REAL_TO / LREAL_TO Konvertierungen
IEC-Operator für Konvertierungen vom Variablentyp REAL oder LREAL in einen anderen Typ.
Es wird nach oben oder unten auf einen ganzzahligen Wert gerundet und in den entsprechenden Variablentypen konvertiert.
Ausgenommen davon sind die nachstehenden Variablentypen:
oSTRING
oBOOL
oREAL
oLREAL
Wenn ein REAL oder LREAL in SINT, USINT, INT, UINT, DINT, UDINT, LINT oder ULINT konvertiert wird und der Wert außerhalb des Wertebereichs des Integers liegt, erhält man ein undefiniertes Ergebnis, das zu einer Steuerungsausnahme führen kann.
HINWEIS: Bestätigen Sie die Wertebereichüberschreitungen von Ihrer Anwendung und vergewissern Sie sich, dass sich die Werte der Datentypen REAL oder LREAL innerhalb der Grenzen des Zielinteger befinden, bevor Sie die Konvertierung durchführen.
Beachten Sie bei der Konvertierung in den Typ STRING, dass die Gesamtkommastellenzahl auf 16 begrenzt ist. Enthält die (L)REAL-Zahl mehr Stellen, wird die sechzehnte Stelle gerundet. Wenn der STRING für die Zahl zu kurz definiert ist, wird von rechts her entsprechend abgeschnitten.
Beispiele in ST mit Konvertierungsergebnissen:
Beispiel |
Resultat |
---|---|
i := REAL_TO_INT(1.5); |
2 |
j := REAL_TO_INT(1.4); |
1 |
i := REAL_TO_INT(-1.5); |
–2 |
j := REAL_TO_INT(-1.4); |
–1 |
LD 2.75
REAL_TO_INT
ST i