Mein Computer ist von 32 Bit auf 64 Bit geändert, und mein Betriebssystem ist 64 Bit Windows 7. Ich denke, der Zeiger in 64 Bit Betriebssystem sollte 64 Bit - 8 Byte sein. Wenn ich jedoch sizeof () in C ++ verwende, um die Größe eines Punktes zu erhalten, ist das Ergebnis 4.
Warum 4 ??
Ihre ausführbare Datei wird immer noch als 32-Bit-Binärdatei kompiliert. Versuchen Sie es als 64-Bit-Projekt zu kompilieren.
Das Betriebssystem hat keinen Einfluss auf die interne Größe eines Zeigers, wenn der Prozessor das Programm in einer 32-Bit-Umgebung emuliert ...
Gehen Sie in VS2010 zum Konfigurationsmanager, machen Sie einen neuen Eintrag unter 'Plattform' und wählen Sie x64
(normalerweise ist es die einzige andere Option dort)
BEARBEITEN: Stellen Sie außerdem sicher, dass Sie void*
an den Operator sizeof()
übergeben.