SA0134: Explizite vorzeichenbehaftete/vorzeichenlose Konvertierungen
Ermittelt explizit durchgeführte Konvertierungen von vorzeichenbehafteten auf vorzeichenlose Datentypen und 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
PROGRAM PLC_PRG
VAR
byVar :BYTE;
udiVar : UDINT;
uliVar : ULINT;
lwVar : LWORD;
wVar : WORD;
siVar : SINT;
iVar : INT;
diVar : DINT;
liVar : LINT;
END_VAR
liVar := ULINT_TO_LINT(uliVar); udiVar := DINT_TO_UDINT(diVar); siVar := BYTE_TO_SINT(byVar); wVar := INT_TO_WORD(iVar); lwVar := SINT_TO_LWORD(siVar);
Ausgabe unter Ansicht Meldungen:
SA0134: Explizite vorzeichenbehaftete/vorzeichenlose Konvertierungen von Typ 'ULINT' zu Typ 'LINT'
SA0134: Explizite vorzeichenbehaftete/vorzeichenlose Konvertierungen von Typ 'DINT' zu Typ 'UDINT'
SA0134: Explizite vorzeichenbehaftete/vorzeichenlose Konvertierungen von Typ 'BYTE' zu Typ 'SINT'
SA0134: Explizite vorzeichenbehaftete/vorzeichenlose Konvertierungen von Typ 'INT' zu Typ 'WORD'
SA0134: Explizite vorzeichenbehaftete/vorzeichenlose Konvertierungen von Typ 'SINT' zu Typ 'LWORD'