Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - array of Byte


Tillmann David - Sa 11.01.03 18:41
Titel: array of Byte
Hi, wie kann ich pointer zu array of byte konventieren?

type kann ich leider nicht benutzen.[/b]


AndyB - Sa 11.01.03 20:21

Das geht so:

Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
var p: Pointer;
...

PByteArray(p)^[0] := 10;
PByteArray(p)^[1] := 10;

// und da Delphi die Zeiger automatisch dereferenziert geht es auch so:

PByteArray(p)[0] := 10;
PByteArray(p)[1] := 10;


Tillmann David - Sa 11.01.03 20:55
Titel: Danke, aber das ist leider nicht...
Danke erstmal, aber das meinte ich nicht, ich erkläre mal genauer was ich will.

da ich

Quelltext
1:
2:
type
MeinBuf = array of Byte;


nicht benutzen kann, habe ich in meine procedure MeinBuf:array of Byte eingefügt.

Ich zeig dir mal einen Ausschnitt aus meinem quelltext:



Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
procedure Test (MeinBuf : array of Byte)
var
P : Pointer;
B : Byte;
begin
MeinBuf := P;  // Hier ist mein Problem
B := buf[24]+(buf[25] shl 8)+buf[26];
end;