最近在工作中经常会涉及到不同平台或者Vendor的情况,为了release方便,会定义了预处理宏,趁着方便,又整理了几个不常用的,供以后查找方便。
1. #error
处理器命令#error强迫编译程序停止编译,主要用于程序调试。
2. #line
命令# line改变_LINE_ 与_ F I L E _的内容,它们是在编译程序中预先定义的标识符。
命令的基本形式如下:
# line number["filename"]
其中的数字为任何正整数,可选的文件名为任意有效文件标识符。行号为源程序中当前行号,文件名为源文件的名字。命令# line主要用于调试及其它非凡应用。
3. #pragma
命令#pragma 为实现时定义的命令,它答应向编译程序传送各种指令。例如,编译程序可能有一种选择,它支持对程序执行的跟踪。可用#pragma语句指定一个跟踪选择。
4. #
在宏定义中的 # 运算符会把跟在其后的参数转换成一个字符串。
5. ##
##运算符用于把参数连接到一起。预处理程序把出现在 ## 两侧的参数合并为一个符号(注意,不一定是字符串,其它数据类型也可以。)。