现在的位置: 首页 > 综合 > 正文

C预处理器标识

2018年04月17日 ⁄ 综合 ⁄ 共 720字 ⁄ 字号 评论关闭

C预处理器标识:

     指令                          用途
     #                  空指令,无任何效果
     #include        包含一个源代码文件
     #define         定义宏
     #undef          取消已定义的宏
     #if                如果给定条件为真,则编译下面代码
     #ifdef            如果宏已经定义,则编译下面代码
     #ifndef          如果宏没有定义,则编译下面代码
     #elif             如果前面的#if给定条件不为真,当前条件为真,则编译下面代码
     #endif           结束一个#if……#else条件编译块
     #error           停止编译并显示错误信息

 

attention

     编译程序时,只要遇到 #error 就会跳出一个编译错误,既然是编译错误,要它干嘛呢?目的就是保证程序是按照你所设想的那样进行编译的.程序中往往有很多的预处理指令
     #ifdef XXX
       ...
     #else

     #endif

     当程序比较大时,往往有些宏定义是在外部指定的(如makefile),或是在系统头文件中指定的,当你不太确定当前是否定义了 XXX 时,就可以改成如下这样进行编译:

     #ifdef XXX
       ...
     #error "XXX has been defined"

     #else

     #endif

     这样,如果编译时出现错误,输出了XXX has been defined,表明宏XXX已经被定义了.

【上篇】
【下篇】

抱歉!评论已关闭.