Einzelnen Beitrag anzeigen

alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#8

Re: Integer lesen, wie in C

  Alt 29. Mai 2005, 21:15
Oder so;
Delphi-Quellcode:
Var
  X : Integer;
  p : PByteArray;

Begin
  p := @X; // p zeigt auf ein Byte-Array. @X ist die Adresse der Variablen X, also zeigt p auf X.
  // Zugriff auf die Bytes of X über p^[0]..p^[3].. Aber Achtung! Intel ist pervers! Achte auf die Reihenfolge der bytes.
Oder, richtig 'dreckig'
Delphi-Quellcode:
Var
  X : Integer;
  B : Array [0..3] Of Byte absolute X;

Begin
  // Delphi kompiliert das so, das B und X den gleichen Speicherbereich belegen.
  // Zugriff über B[0]..B[3]
Ein einfaches Typcasting sollte es auch tun, also sowas:
Delphi-Quellcode:
Type
  TIntAsBytes = Array [0..3] of Byte;

Var
  X : Integer;

Begin
  // Zugriff auf die Bytes von X über TIntAsBytes(X)[0] ... TIntAsBytes(X)[3]
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat