求助,为啥在Windows系统下#ifdef _WINDOWS 不生效

_WINDOWS不可靠,这是vs编译工具在创建工程的时候附加到预定义宏设置中去的,完全可以删除。直接使用cl等工具编译源文件的时候,就更加没有这个宏了。类似的还有WIN32宏。如果要判断Windows平台,不如使用_WIN32这个宏,这是编译器内置的宏,对32和64位程序有效。_WIN64对64位程序有效。其实更常用的是_MSC_VER,这是vc版本的内置宏。
■网友
#ifdef WIN32 如果定义了 WIN32,则要做...具体要做的写在#ifdef WIN32 到 #endif之间,例如:#ifdef WIN32 #include \u0026lt;windows.h\u0026gt; #endif目的是使这个程序能在windows 下也能工作,不需要修改源程序。
■网友
如果是vs2008的工程,先右击你的工程-\u0026gt;属性-\u0026gt;配置属性-\u0026gt;C/C++-\u0026gt;预处理器(如下图)在红框里边添加_WINDOWS等预处理定义求助,为啥在Windows系统下#ifdef _WINDOWS 不生效
【求助,为啥在Windows系统下#ifdef _WINDOWS 不生效】


    推荐阅读