Thema: [C++] Zeiger

Einzelnen Beitrag anzeigen

OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#2

Re: [C++] Zeiger

  Alt 27. Aug 2007, 12:06
Mit
Code:
*doshdr->e_lfanew
greifst du auf das Element e_lfanew in doshdr zu, und dann dereferenzierst du dieses Element. Du derefenzierst mit dem Sternchen e_lfanew, nicht doshdr, und e_lfanew ist vermutlich kein Zeiger, sondern ein long (rate ich jetzt mal, ohne die Struktur zu kennen). Der Pfeil in C++ bewirkt bereits eine Derefenzierung. Um auf ein Element einer Struktur zuzugreifen, die du als Objekt und nicht als Zeiger hast, benutzt man in C++ den Punkt. Korrekt wäre also entweder
Code:
doshdr->e_lfanew
, oder umständlicher
Code:
(*doshdr).e_lfanew
.

Edit:
Das, was Muetze01 schreibt, hat zwar nichts mit deinem Problem zu tun, ist aber ebenfalls etwas, was dir Kopfschmerzen ersparen könnte, weil du so ein Memory-Leak hast
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat