SA0133: Explizite einschränkende Konvertierungen
Funktion | Ermittelt explizit durchgeführte Konvertierungen von einem größeren auf einen kleineren Datentyp. |
Begründung | Eine große Zahl von Typkonvertierungen kann bedeuten, dass falsche Datentypen für Variablen gewählt wurden. Es gibt daher Programmierrichtlinien, die eine explizite Begründung für Datentypkonvertierungen fordern. |
Wichtigkeit | Niedrig |
Beispiele:
PROGRAM MAIN
VAR
nSINT : SINT;
nDINT : DINT;
nLINT : LINT;
nBYTE : BYTE;
nUINT : UINT;
nDWORD : DWORD;
nLWORD : LWORD;
fREAL : REAL;
fLREAL : LREAL;
END_VARnSINT := LINT_TO_SINT(nLINT); // => SA0133
nBYTE := DINT_TO_BYTE(nDINT); // => SA0133
nSINT := DWORD_TO_SINT(nDWORD); // => SA0133
nUINT := LREAL_TO_UINT(fLREAL); // => SA0133
fREAL := LWORD_TO_REAL(nLWORD); // => SA0133