gpt4 book ai didi

c++ - 是否有任何宏来确定我的代码是否正在编译到 Windows?

转载 作者:IT老高 更新时间:2023-10-28 12:32:45 28 4
gpt4 key购买 nike

我想检测我正在编译的操作系统是否是 Windows。有没有我可以检查的简单宏来验证这一点?

最佳答案

[编辑:我假设您想使用编译时宏来确定您所在的环境。也许您想确定您是在 Linux 下的 Wine 上运行还是在 Windows 上运行,但一般来说,您的编译器针对特定环境,即 Windows (DOS) 或不是,但很少(从不?) 两者。]

一些编译器提供宏来指示 Windows 构建环境。但这些会因编译器而异,甚至在 Windows 上的相同编译器上,如果目标环境是 不是 专门的 windows。通常是 __WIN32__,但并非总是如此。

#if defined (__WIN32__)
// Windows stuff
#endif

有时它可以是 _WIN32__CYGWIN32__,或者可能只是编译器指示符 (_MSC_VER)。

如果您知道要构建的环境(来自 makefile),那么您通常可以在命令行中传入 #define,例如“g++ -D __WIN32__ yourfile .c”。

A little more info here

关于c++ - 是否有任何宏来确定我的代码是否正在编译到 Windows?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/430424/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com