#if defined 宏定义常用“与”、“或”、“非”判断

1.“与”判断 (即判断多个宏是否同时定义)

#if defined(WIN32) && !defined(__LWIP_OPT_H__) && !defined(LWIP_HDR_OPT_H)
#endif /* curl_socket_typedef */

2.“或”判断(即判断多个宏是否有其中一个定义)

#if defined(_AIX) || defined(__NOVELL_LIBC__) || defined(__NetBSD__) || \
    defined(__minix) || defined(__SYMBIAN32__) || defined(__INTEGRITY) || \
    defined(ANDROID) || defined(__ANDROID__) || defined(__OpenBSD__) || \
   (defined(__FreeBSD_version) && (__FreeBSD_version < 800000))
#include <sys/select.h>
#endif

2.“非”判断(即判断多个宏是否同时都没有定义)

#if !defined(WIN32) && !defined(__WATCOMC__) && !defined(__VXWORKS__)
#include <sys/time.h>
#endif

你可能感兴趣的:(C++语言)