空宏和零宏 空宏和零宏并没有这个术语,是我瞎起的名字,指的是: 空宏:#define XXX 零宏:#define XXX 0 空宏 #define XXX #if XXX //错误 #if XXX == 0 //错误 #ifdef XXX //真 #ifndef XXX //假 零宏 #define XXX 0 #if XXX //假 #if XXX == 0 //真 #ifdef XXX //真 #ifndef XXX //假 没定义 #if XXX //假 #if XXX == 0 //真 #ifdef XXX //假 #ifndef XXX //真 三者略有不同,很坑。