首页 > 代码库 > 预处理指令
预处理指令
预处理指令在编译之前,由编译器执行,预处理结果作为编译器的输入。
主要功能:把其他文件包含到当前文件、定义符号常量和宏、程序代码的条件编译以及预处理指令的条件执行。
预处理指令包括:#include, #define, #error, #if, #else, #elif, #endif, #ifdef, #ifndef, #undef, #line, #pragma
1、#include指令
作用:指示编译器将该指令所指出的另一个源文件嵌入该指令所在的程序中。
文件名使用尖括号:在指定目录中寻找被包括的文件
文件名使用双引号:在被编译的程序所在目录中寻找被包括的文件
2、#define指令
定义符号常量或宏,一般形式为:
#define 符号常量标识符 字符串
#define 宏标识符 字符串
程序中的宏标识符在编译前只是被完全的文本替代。
#define PI 3.1415926
#define CIRCLE_AREA1(x) (PI * (x) * (x))
#define CIRCLE_AREA2(x) (PI * x * x)
调用area = CIRCLE_AREA1(c+2), 预处理后为 area = (3.1415926 * (c+2) * (c+2))
调用area = CIRCLE_AREA2(c+2), 预处理后为 area = (3.1415926 * c+2* c+2)=(3.1415926 * c) + (2 * c) +2
3、#if, #else, #endif, #ifdef, #ifndef指令
#if常量表达式
程序段1
#else
程序段2
#endif
若#if指令后的常数表达式为true,编译程序段1;否则,编译程序段2
#ifdef, #ifndef指令分别相当于#if define和#if!define
null
预处理指令
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。