Thema: Delphi Zeigerarithmetik

Einzelnen Beitrag anzeigen

Muetze1
(Gast)

n/a Beiträge
 
#2

Re: Zeigerarithmetik

  Alt 2. Jun 2008, 09:24
Benutze Increment. Beachte aber, dass die Funktion um die Größe des Pointer (bei typisierten Pointer) erhöht!

Ich gehe in deinem Beispiel mal davon aus, dass pDataWithOffset ein PByte oder PChar ist, also ein Pointer auf ein Byte.

Delphi-Quellcode:
pDataWithOffSet := pData;
Inc(pDataWithOffset, i * $10000);
Wenn nicht, dann einfach den Wert einfach durch die Grösse deines Datentyps teilen. Also so:

Delphi-Quellcode:
pDataWithOffSet := pData;
Inc(pDataWithOffset, (i * $10000) div sizeof(pDataWithOffset^));
  Mit Zitat antworten Zitat