C++ 条件编译


一个程序的实现经历了以下一个过程:

C/C++条件编译 C源程序->编译预处理->编译->优化程序->汇编程序->链接程序->可执行文件 C/C++条件编译

一般情况下,源程序中的所有行都参加编译。但是,有时候希望程序中的一部分内容只在满足一定条件时才进行编译,也就是对这一部分的内容指定编译的条件,成为“条件编译”。

 

指令 用途

空指令,无任何效果

#include 包含一个源代码文件

#define 定义宏

#undef 取消已定义的宏

#if 如果给定条件为真,则编译下面代码

#ifdef 如果宏已经定义,则编译下面代码

#ifndef 如果宏没有定义,则编译下面代码

#elif 如果前面的#if给定条件不为真,当前条件为真,则编译下面代码,其实就是else if的简写

#endif 结束一个#if……#else条件编译块

#error 停止编译并显示错误信息

 

条件编译有以下几种形式:

1#ifdef 标识符

            程序段1

     #else

            程序段2

     #endif

作用:若指定的标识符已经在#define命令中定义过,则在程序编译阶段编译程序段1,否则编译程序段2

2#ifndef 标识符

             程序段1

     #else

             程序段2

     #endif

作用:与(1)相反

3#if   表达式

           程序段1

     #else

           程序段2

     #endif

作用:当指定的表达式为真(非零)时就编译程序段1,否则编译程序段2

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值