#if defined和#ifdef

朱小勇 / 2023-09-06 / 原文

1.
#define MY_MACRO  
  
...  
  
#ifdef MY_MACRO  
  // 这部分代码会被预处理器处理  
#else  
  // 这部分代码会被预处理器忽略  
#endif

2.

int my_var = 1;  
#define MY_MACRO my_var  
  
...  
  
#if defined(MY_MACRO)  
  // 这部分代码会被预处理器处理  
#else  
  // 这部分代码会被预处理器忽略  
#endif