if语句是确定要编译的内容,在运行时判断,比如:
if(a>b)
printf("A大于B");
else
printf("A小于B");
条件编译可不是在运行阶段执行的,是为了某种需要(特别是跨平台的需要),只在编译器扫描源代码时,确定用哪一部分。
举个例子,比如,一般LINUX多线程程序叫做pthread_create,而WINDOWS启动多线程的程序是CreateThread,为了保证同一个程序可以跨平台运行,我们这样书写程序:
#ifdef WIN32 //如果是WINDOWS系统
#include
#define THREAD CreateThread
#else //如果是LINUX系统
#include
#define THREAD pthread_create
#endif