Operador IEC para conversiones del tipo de variable REAL o LREAL a otro tipo.
El valor se redondeará al alza o a la baja al número entero más próximo y se convertirá al nuevo tipo de variable.
Los siguientes tipos de variables son excepciones a esta norma:
oSTRING
oBOOL
oREAL
oLREAL
Si un REAL o LREAL se convierte en SINT, USINT, INT, UINT, DINT, UDINT, LINT o ULINT y el valor del número real no se encuentra dentro del rango de valores de ese entero, el resultado será indefinido y puede provocar una excepción del controlador.
NOTA: Valide cualquier desborde del rango mediante la aplicación y compruebe que el valor del REAL o LREAL se encuentra dentro de los límites del entero de destino antes de realizar la conversión.
Al realizar la conversión al tipo STRING, tenga en cuenta que el número total de dígitos está limitado a 16. Si el número (L)REAL tiene más dígitos, se redondeará el decimosexto. Si la longitud de la STRING se define como demasiado corta, se cortará desde el extremo derecho.
Ejemplos en ST con resultados de la conversión:
Ejemplo |
Resultado |
---|---|
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