Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Aktualisiert: November 2007
Wenn Sie Visual C++ zum Erstellen von Anwendungen für 64-Bit-Windows-Betriebssysteme verwenden, sollten Sie folgende Punkte berücksichtigen:
int und long sind unter 64-Bit-Windows-Betriebssystemen 32-Bit-Werte. In Programmen, die für 64-Bit-Plattformen kompiliert werden, sollten Sie darauf achten, keine Zeiger auf 32-Bit-Variablen zu verwenden. Zeiger sind auf 64-Bit-Plattformen 64-Bit-Zeiger, und der Zeigerwert wird abgeschnitten, wenn Sie ihn einer 32-Bit-Variable zuweisen.
size_t, time_t und ptrdiff_t sind unter 64-Bit-Windows-Betriebssystemen 64-Bit-Werte.
time_t ist auf 32-Bit-Windows-Betriebssystemen in Visual C++-Versionen vor Visual C++ 2005 ein 32-Bit-Wert. In Visual C++ 2005 und höheren Versionen ist time_t standardmäßig eine 64-Bit-Ganzzahl. Weitere Informationen finden Sie unter Zeit-Management.
Sie sollten wissen, an welcher Stelle Ihr Code einen int-Wert übernimmt und diesen als size_t-Wert oder als time_t-Wert verarbeitet. Die Zahl kann die Länge eines 32-Bit-Werts überschreiten, sodass die Daten abgeschnitten sind, wenn Sie wieder an den int-Speicher übergeben werden.
Der printf-Modifizierer %x (hexadezimales int-Format) funktioniert auf einem 64-Bit-Windows-Betriebssystem nicht erwartungsgemäß. Er wird nur auf die ersten 32 Bits eines ihm übergebenen Werts angewendet.
Verwenden Sie %I32x, um auf einem 32-Bit-Windows-Betriebssystem eine ganze Zahl anzuzeigen.
Verwenden Sie %I64x, um auf einem 64-Bit-Windows-Betriebssystem eine ganze Zahl anzuzeigen.
%p (Hexadezimalformat für einen Zeiger) funktioniert unter 64-Bit-Windows-Betriebssystemen erwartungsgemäß.
Weitere Informationen finden Sie unter folgenden Themen: