预处理称号含义
#define 宏界说
#undef 吊销已界说过的宏名
#include 使编译程序将另一源文件嵌入到带有#include 的源文件中
#if
#line 改动当时行数和文件称号,它们是在编译程序中预先界说的标识符
指令的基本方式如下:#line number[“filename”]
#error 编译程序时,只需遇到#error 就会生成一个编译过错提示音讯,并中止编译
#pragma
条件编译
条件编译的功用使得咱们能够按不同的条件去编译不同的程序部分,因而发生不同的方针代码文件。这关于程序的移植和调试是很有用的。条件编译有三种方式,下面别离介绍
第一种方式:
#ifdef 标识符
程序段1
#else
程序段2
#endif
它的功用是,假如标识符已被#define 指令界说过则对程序段1 进行编译;不然对程序段2进行编译。假如没有程序段2(它为空),本格局中的#else 能够没有,即能够写为:
#ifdef 标识符
程序段
#endif
第二种方式:
#ifndef 标识符
程序段1
#else
程序段2
#endif
与第一种方式的区别是将“ifdef”改为“ifndef”。它的功用是,假如标识符未被#define 指令界说过则对程序段1 进行编译,不然对程序段2 进行编译。这与第一种方式的功用正相反。
第三种方式:
#if 常量表达式
程序段1
#else
程序段2
#endif
它的功用是,如常量表达式的值为真(非0),则对程序段1 进行编译,不然对程序段2 进行编译。因而能够使程序在不同条件下,完结不同的功用。
至于#elif 指令含义与else if 相同,它构成一个if else-if 阶梯状句子,可进行多种编译挑选。