defined是预处理运算符。
defined NAME是用来判断NAME是否被定义了(被用define定义了)。
#ifdef NAME == #if defined(NAME)
#ifndef NAME == #if !defined(NAME)
但是在处理双重和多重判断时,defined的优势就显示出来了
#ifdef NAME1
#ifdef NAME2
......
#endif
#endif
可以写成
#if defined(NAME1) && defined(NAME2)
.......
#endif
defined NAME是用来判断NAME是否被定义了(被用define定义了)。
#ifdef NAME == #if defined(NAME)
#ifndef NAME == #if !defined(NAME)
但是在处理双重和多重判断时,defined的优势就显示出来了
#ifdef NAME1
#ifdef NAME2
......
#endif
#endif
可以写成
#if defined(NAME1) && defined(NAME2)
.......
#endif