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.
Microsoft-spezifische () können Sie Variablen, so markiert, dass, wenn Sie mit /Wp64 , kompiliert der Compiler alle Warnungen ausgegeben, die gemeldet werden, wenn Sie mit einem 64-Bit-Compiler kompilierten.
type __w64 identifier
Parameter
type
Einer der drei Typen, die möglicherweise Probleme im Code verursachen, der von einem 32-Bit- zu einem 64-Bit-Compiler portiert wird: int, longoder einen Zeiger.identifier
Der Bezeichner für die Variable, die Sie erstellen.
Hinweise
Wichtig |
|---|
Die /Wp64-Compileroption und das __w64-Schlüsselwort sind veraltet und werden in einer zukünftigen Version des Compilers entfernt werden.Wenn Sie die /Wp64-Compileroption in der Befehlszeile verwenden, gibt der Compiler Befehlszeilenwarnung D9035 aus.Verwenden Sie statt dieser Option und dieses Schlüsselworts zum Ermitteln von 64-Bit-Portabilitätsproblemen einen Visual C++-Compiler, der für eine 64-Bit-Plattform konzipiert ist.Weitere Informationen finden Sie unter Configuring Programs for 64-Bit (Visual C++). |
Jedes typedef, das __w64 dafür hat, muss auf x86 32 Bits und 64 Bits in Itanium-Prozessorfamilie (IPF) sein.
Das __w64-Schlüsselwort sollte für alle Typdefinitionen angegeben werden, die Größe zwischen 32 64 Bits Plattformen des Bits und ändern.Für irgend diesen Typ sollte __w64 nur in der 32-Bit-Definition Typedefs angezeigt werden.
Das __w64-Schlüsselwort wird ignoriert, wenn die Kompilierung nicht /Wp64verwendet.
Weitere Informationen zum Portieren um 64-Bit, finden Sie in den folgenden Themen:
Beispiel
// __w64.cpp
// compile with: /W3 /Wp64
typedef int Int_32;
#ifdef _WIN64
typedef __int64 Int_Native;
#else
typedef int __w64 Int_Native;
#endif
int main() {
Int_32 i0 = 5;
Int_Native i1 = 10;
i0 = i1; // C4244 64-bit int assigned to 32-bit int
// char __w64 c; error, cannot use __w64 on char
}
Wichtig