在MSVC 2010命令行中强制32位编译

时间:2016-05-28 22:24:10

标签: c visual-studio-2010 32-bit cl

是否可以选择在MSVC 2010命令行可执行文件中指定强制进行32位编译?如果是这样,它是什么?

先谢谢您的帮助,

问候。

1 个答案:

答案 0 :(得分:0)

编译32位的命令行需要额外的/D "WIN32"

这只会定义WIN32。像INT_PTR这样的宏对于64位和32位的解释会有所不同。例如,INT_PTR定义如下:

#if defined(_WIN64)
    typedef __int64 INT_PTR, *PINT_PTR; //64bit
    ...
#else
    typedef _W64 int INT_PTR, *PINT_PTR; //32bit
    ...
#endif

此外,64位的链接选项包括/MACHINE:X64

对于32位,必须将其更改为/MACHINE:X86

在Visual Studio中,您可以创建一个示例项目,然后在Project Properties中显示C / C ++编译和链接的命令行选项。