REAL/LREAL_TO_<type>
Der IEC-Operator dient der Konvertierung vom Datentyp REAL und LREAL in einen anderen Datentyp.
Syntax:
REAL_TO_<Datentyp>
LREAL_TO_<Datentyp>
TwinCAT rundet den Real-Wert des Operanden nach oben oder unten auf einen ganzzahligen Wert und wandelt in den entsprechenden Datentyp um. Ausgenommen davon sind die Datentypen STRING, BOOL, REAL und LREAL.
![]() | Wenn Sie ein eine Zahl vom Typ REAL oder LREAL zu SINT, USINT, INT, UINT, DINT, UDINT, LINT oder ULINT konvertieren und der Wert der REAL/LREAL-Zahl außerhalb des Wertebereichs des Integer liegt, erhalten Sie ein undefiniertes Ergebnis. Auch ein Ausnahmefehler ist dann möglich! |
Beachten Sie bei der Konvertierung in den Datentyp STRING, dass die Gesamt-Kommastellen-Zahl auf 16 begrenzt ist. Enthält die (L)REAL-Zahl mehr Stellen, wird die sechzehnte Stelle gerundet und so im String dargestellt. Wenn der String für die Zahl zu kurz definiert ist, schneidet TwinCAT von rechts her ab.
![]() | Bei der Typkonvertierung von größeren zu kleineren Datentypen können Informationen verloren gehen. |
Beispiele:
ST-Code | Ergebnis |
---|---|
nVar1 := REAL_TO_INT(1.5); | 2 |
nVar2 := REAL_TO_INT(1.4); | 1 |
nVar1 := REAL_TO_INT(-1.5); | -2 |
nVar2 := REAL_TO_INT(-1.4); | -1 |
FUP-Code | Ergebnis |
---|---|
2 |
Siehe auch:
- Datentypen > REAL/LREAL