Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Nochmal Pointer (von C++ zu Delphi) (https://www.delphipraxis.net/146560-nochmal-pointer-von-c-zu-delphi.html)

MisterNiceGuy 22. Jan 2010 14:52


Nochmal Pointer (von C++ zu Delphi)
 
Hi, ich hab in C++ folgende Zeilen Quelltext:

Code:
DWORD* a;
pSample->GetPointer((BYTE**)(&a));
a+= 13;
pSample->GetPointer liefert einen Pointer, die gleiche Funktion existiert auch in Delphi nur, dass diese einen pByte-Pointer liefert.

Wie übersetze ich das jetzt?

Mein Ansatz wäre gewesen:
Delphi-Quellcode:
   var a:pDWORD;
begin
   pSample.GetPointer(pByte(a));
   inc(a,13);
end;
That compiles...
Frage ist nun, ob das pByte bei GetPointer irgendwas verwurschtelt? Ich meine das ist auch 4 Bytes groß aber das sind ja Pointer alle...

Mithrandir 22. Jan 2010 15:53

Re: Nochmal Pointer (von C++ zu Delphi)
 
Sieht formal gut aus... Sehe da kein Problem... :gruebel:

hoika 22. Jan 2010 15:55

Re: Nochmal Pointer (von C++ zu Delphi)
 
Hallo,

Pointer gehen meistens.
Aber ob was rictiges rauskommt ??? ;)

DWORD* a;
var a:pDWORD;
passt

pSample->GetPointer((BYTE**)(&a));
&a ist aber eine Referenz,
ausserdem sind es ja zwei **,
also Pointer auf Pointer


type
ppByte = ^pByte;
pSample.GetPointer(ppByte(@a));

wenn man das ppByte überhaupt braucht



a+= 13;
inc(a,13);
passt


Heiko


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:39 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz