Skip to main content

SA0133: Conversiones de restricción explícitas

Detecta conversiones explícitas de un tipo de datos más grande a un tipo de datos más pequeño

Justificación: Una gran cantidad de conversiones de tipos puede indicar que ha elegido los tipos de datos incorrectos para las variables. Por este motivo, existen pautas de programación que requieren una justificación explícita para las conversiones de tipos de datos.

Importancia: Baja

ejemplo 56. Ejemplo
PROGRAM SA0133
VAR
    siVar:SINT;
    diVar:DINT;
    liVar:LINT;
    byVar:BYTE;
    uiVar:UINT;
    dwVar:DWORD;
    lwVar:LWORD;
    rVar:REAL;
    lrVar:LREAL;
END_VAR
siVar := LINT_TO_SINT(liVar);    // SA0133
byVar := DINT_TO_BYTE(diVar);    // SA0133
siVar := DWORD_TO_SINT(dwVar);    // SA0133
uiVar := LREAL_TO_UINT(lrVar);    // SA0133
rVar := LWORD_TO_REAL(lwVar);    // SA0133

Salida en el Mensajes vista:

  • sa_icon_message.png SA0133: Conversión de restricción explícita del tipo 'LINT' al tipo 'SINT'

  • sa_icon_message.png SA0133: Conversión de restricción explícita del tipo 'DINT' al tipo 'BYTE'

  • sa_icon_message.png SA0133: Conversiones de restricción explícita del tipo 'DWORD' al tipo 'SINT'

  • sa_icon_message.png SA0133: Conversión de restricción explícita del tipo 'LREAL' al tipo 'UINT'

  • sa_icon_message.png SA0133: Conversión de restricción explícita del tipo 'LWORD' al tipo 'REAL'