Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Wanneer u de MsVC-compiler (Microsoft C++) gebruikt om toepassingen te maken die kunnen worden uitgevoerd op een 64-bits Windows-besturingssysteem, moet u rekening houden met de volgende problemen:
Een
inten eenlongzijn 32-bits waarden op 64-bits Windows-besturingssystemen. Voor programma's die u wilt compileren voor 64-bits platforms, moet u ervoor zorgen dat u geen aanwijzers toewijst aan 32-bits variabelen. Aanwijzers zijn 64-bits op 64-bits platforms en u kapt de waarde van de aanwijzer af als u deze toewijst aan een 32-bits variabele.size_t,time_tenptrdiff_tzijn 64-bits waarden op 64-bits Windows-besturingssystemen.time_tis een 32-bits waarde op 32-bits Windows-besturingssystemen in Visual Studio 2005 en eerder.time_tis nu standaard een 64-bits geheel getal. Zie Time Management voor meer informatie.Je moet weten waar je code een
intwaarde neemt en verwerkt als eensize_toftime_twaarde. Het is mogelijk dat het aantal groter kan worden dan een 32-bits getal en dat gegevens worden afgekapt wanneer het wordt doorgestuurd naar deintopslag.
De modifier %x (hex-indeling int ) printf werkt niet zoals verwacht op een 64-bits Windows-besturingssysteem. Deze wordt alleen uitgevoerd op de eerste 32 bits van de waarde die eraan wordt doorgegeven.
Gebruik %I32x om een 32-bits integraal type weer te geven in hex-indeling.
Gebruik %I64x om een 64-bits integraal type weer te geven in hex-indeling.
De %p (hex-indeling voor een aanwijzer) werkt zoals verwacht op een 64-bits Windows-besturingssysteem.
Voor meer informatie, zie:
Zie ook
C++-projecten configureren voor 64-bits, x64-doelen
Handleiding voor overzetten en upgraden van Microsoft C++