不同的硬件,两份代码?条件编译解决这个问题!

条件编译

1、条件编译的基本结构

 *************************************************************************************************
   以打印机为例

  #define __PRINTTER1__  与  #define __PRINTTER2__ 作为切换(二者注释一个)
   #if defined(__PRINTTER1__)
   程序1  或者  函数1  或者  指令1
   #elif defined(__PRINTTER2__)
   程序2  或者  函数2  或者  指令2
   #endif
 ************************************************************************************************

2、条件编译实例

#define __PRINTTER_SPRMD8__   
//#define __PRINTTER_E42__ 


#if defined(__PRINTTER_SPRMD8__)    
    uint8_t nextlineorder[1]={0x0A};
#elif defined(__PRINTTER_E42__)
    uint8_t nextlineorder[1]={0x0B};
#endif

3、说明

仅编译“未被注释的那个定义”的相关部分,“被注释的定义”的相关部分不论出现语法问题,逻辑问题,都不影响程序的运行。因为并没有被编译器编译!

若是硬件型号不同,或者不同仪器的基本参数不同,都可以用这种方式解决,避免两份甚至多份代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值