Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.062 Beiträge
Delphi 12 Athens
|
AW: Bytes auf ein Integer auffädeln
6. Sep 2018, 22:27
Es gibt auch fertige Funktionen ala Point (TPoint), SmallPoint (TSmallPoint), MakeLong usw.
Ansonsten werden meistens Records zum Casten bzw. für Teilzugriffe verwendet, so wie bereits erklärt, von welchen es auch schon Fertige für Integer, Word usw. gibt.
L := (Integer(FReceiveBuffer[9]) shl 8) or FReceiveBuffer[10];
Die Klammern um SHL sind vermutlich nicht nötig, da SHL vor OR aufgelöst wird. (glaub ich)
Und das Wichtige ist der CAST des Buffer[9] auf Word oder gleich auf Integer, denn diese Typen sind schon groß genug, damit das SHL ordentlich schieben kann, ohne links überzulaufen.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
Geändert von himitsu ( 6. Sep 2018 um 23:05 Uhr)
|