用于标识UNIX派生系统的通用宏? (Linux,OSX,BSD,……)
发布时间:2020-12-15 17:01:10 所属栏目:安全 来源:网络整理
导读:我想知道为什么在MacOSX上没有定义宏__unix__. MacOSX不是BSD UNIX衍生产品吗? 如果我在代码中定义__unix__宏,我可以遇到一些问题吗? 一般来说,在检查当前平台时,我更喜欢做以下事情: #ifdef __unix__...#endif 代替: #if defined(__unix__) || defined(
我想知道为什么在MacOSX上没有定义宏__unix__.
MacOSX不是BSD UNIX衍生产品吗? 如果我在代码中定义__unix__宏,我可以遇到一些问题吗? 一般来说,在检查当前平台时,我更喜欢做以下事情: #ifdef __unix__ ... #endif 代替: #if defined(__unix__) || defined(__APPLE__) || defined(__linux__) || defined(BSD) ... ... #endif 最好的选择是在一个地方定义我自己的宏吗?例如.: #if defined(__unix__) || defined(__APPLE__) || defined(__linux__) || defined(BSD) ... #define UNIX_ #endif
POSIX要求在< unistd.h>中定义_POSIX_VERSION. (也可以通过sysconf(_SC_VERSION)访问),所以试试吧.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |