Preprocessor
 
控制预处理器的命令。

说明

预处理器命令被发送到编译器来控制什么被编译和如何。它们可用于选择编译一个代码块而不是另一个代码,以实现跨平台的兼容性,包括头文件或其他源文件,定义称为宏的小型内联函数,或者改变编译器如何处理变量。

Conditional Compilation
基于条件允许分支编译的命令。
Text Replacement
创建文本替换宏的命令。
File Directives
向编译器指示其他文件如何与源文件相关的命令。
Control Directives
设置编译选项,控制编译和报告编译时间信息的命令。
Metacommands
保持向后兼容的命令。

有条件汇编
#if
根据条件编译以下代码块。
#ifdef
如果定义了符号,则编译以下代码块。
#ifndef
如果未定义符号,则编译以下代码块。
#elseif
如果条件为真,并且先前的条件为假,则编译以下代码块。
#else
如果先前的条件为假,则编译以下代码块。
#endif
表示代码块的结束。
defined
如果定义符号,返回“-1”,否则返回“0”。

文字更换
#define
创建单行文本替换宏。
#macro#endmacro
创建多行文本替换宏。
#undef
取消定义符号。
# Preprocessor Stringize
将文本转换为字符串文字。
## Preprocessor Concatenate
连接两段文字。
! Escaped String Literal
表示必须对转义序列处理紧跟的字符串字面值。
$ Non-Escaped String Literal
表示紧随其后的字符串字面值不能对转义序列进行处理。

档案指令
#include
从文件插入文本。
#inclib
在链接过程中包含一个库。
#libpath
包括在链接过程中搜索库的路径。

控制指令
#pragma
设置编译选项。
#lang
从源设置方言。
#print
在编译时将消息输出到标准输出。
#error
将消息输出到标准输出并停止编译。
#Assert
如果给定的条件为假,则停止使用错误消息进行编译。
#line
设置当前行号和文件名。

元命令
'$Include
#include指令的替代形式。
'$Dynamic
Option Dynamic语句的替代形式。
'$Static
Option Static语句的替代形式。
'$Lang
#lang指令的替代形式。