#include 包含指令
将一个源文件嵌入到当前源文件中该点处。
#include<文件名>
按标准方式搜索,文件位于C++系统目录的include子目录下
#include"文件名"
首先在当前目录中搜索,若没有,再按标准方式搜索。
#define 宏定义指令
定义符号常量,很多情况下已被const定义语句取代。
定义带参数宏,已被内联函数取代。
#undef
删除由#define定义的宏,使之不再起作用。
1 #define PI 3.14 2 #undef //取消之前已有的宏定义
条件编译指令 #if 和 #endif
#if 常量表达式
//当“ 常量表达式”非零时编译
程序正文
#endif
......
1 #if 0 //如果将0改为1表示要编译 2 ------------- 3 ------ 4 不编译 5 ---------- 6 #endif
条件编译指令 ——#else
#if 常量表达式
//当“ 常量表达式”非零时编译
程序正文
#else
//当“ 常量表达式”为零时编译
程序正文2
#endif
#if !strcmp(char *a,char *b) //如果为真则编译,否则编译else #else #endif
条件编译指令 ——#elif
#if 常量表达式1
程序正文1 //当“ 常量表达式1”非零时编译
#elif 常量表达式2
程序正文2 //当“ 常量表达式2”非零时编译
#else
程序正文3 //其他情况下编译
#endif
-------------------------------------
#ifdef 标识符
程序段1
#else
程序段2
#endif
如果“标识符”经#defined定义过,且未经undef删除,则编译程序段1,否则编译程序段2。
#define PI 3.14 #ifdef PI //如果定义了PI,则编译,否则编译else #else #endif
#ifndef 标识符
程序段1
#else
程序段2
#endif
如果“标识符”未被定义过,则编译程序段1,否则编译程序段2。
--------------------------------------------
来源:https://www.cnblogs.com/defen/p/5312598.html