SA0134: Explizite vorzeichenbehaftete/vorzeichenlose Konvertierungen
Funktion | Ermittelt explizit durchgeführte Konvertierungen von vorzeichenbehafteten auf vorzeichenlose Datentypen oder umgekehrt. |
Begründung | Ein übermäßiger Gebrauch 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
nBYTE : BYTE;
nUDINT : UDINT;
nULINT : ULINT;
nWORD : WORD;
nLWORD : LWORD;
nSINT : SINT;
nINT : INT;
nDINT : DINT;
nLINT : LINT;
END_VARnLINT := ULINT_TO_LINT(nULINT); // => SA0134
nUDINT := DINT_TO_UDINT(nDINT); // => SA0134
nSINT := BYTE_TO_SINT(nBYTE); // => SA0134
nWORD := INT_TO_WORD(nINT); // => SA0134
nLWORD := SINT_TO_LWORD(nSINT); // => SA0134