#if !defined(__cplusplus)
#error C++ compiler required.
#endif
__cplusplus变量只在编译一个C++程序时定义
如果没有定义,#error输出编译器错误信息"C++ compiler required"
#define to_string(s) #s
在宏定义中,#将后面的文本加上双引号
#define concatenate(x,y) x##y
在宏定义中,##将前后文本连接
#if expression
#ifdef macro
#ifndef macro
#else
可对应上面的宏或者表达式
#elif expression
#endif
这些命令让编译器进行简单的逻辑控制
#include<filename>
本命令包含一个文件并在当前位置插入。
#line line_number "filename"
改变变量__LINE__和__FILE__的值。他们分别表示正在处理的当前行和当前文件。
#pragma para
最复杂的预处理命令,详见百度百科#pragma http://baike.baidu.com/view/1451188.htm
#undef macro
取消一个先前定义的宏变量
预定义变量:
__LINE__ 正在处理的行号
__FILE__ 正在处理的文件名
__DATE__ 当前日期,格式为month/day/year
__TIME__ 当前时间,格式为hour:minute:second
__cplusplus编译一个C++程序时定义
__STDC__ 编译一个C程序时定义,编译C++时也可能定义
加载中,请稍候......