Registriert seit: 4. Apr 2008
400 Beiträge
|
AW: Datentype Array of Byte und Cardinal
4. Apr 2011, 18:00
Danke, werde ich machen!
Hatte jetzt versucht mit Swap zu arbeiten - dass gefällt mir aber nicht.
Es sollte halt automatisch gehen um Fehler vorzubeugen.
Fertig und geht:
Delphi-Quellcode:
TCardinalRec = record
private
function GetCardinal : Cardinal;
procedure SetCardinal(const Value : Cardinal);
public
_Byte : packed Array[0..3] of Byte;
Property _Cardinal : Cardinal read GetCardinal write SetCardinal;
end;
function TCardinalRec.GetCardinal : Cardinal;
begin
Result :=
(_Byte[0] Shl 24) or
(_Byte[1] Shl 16) or
(_Byte[2] Shl 8) or
_Byte[3];
end;
procedure TCardinalRec.SetCardinal(const Value : Cardinal);
begin
_Byte[0] := Value shr 24;
_Byte[1] := Value shr 16;
_Byte[2] := Value shr 8;
_Byte[3] := Value and $FF;
end;
Delphi 2010, Update 4 & 5
Geändert von schwa226 ( 4. Apr 2011 um 18:10 Uhr)
|