#ifdef #endif

条件编译

当满足某条件时对一组语句进行编译,而当条件不满足时则编译另一组语句

格式

#ifdef 标识符 
程序段1 
#else 
程序段2 
#endif

当标识符已经被定义过(一般是用#define命令定义),则对程序段1进行编译,否则编译程序段2。 其中else后面部分可以省略。

//当LCD_ICON_3A有定义就可以用,当LCD_ICON_4A有定义就可以用
//不然编译就自动忽略,提高可移植性
#ifdef LCD_ICON_3A
void DisplayDigital_1(u8 data)
{
	u8 u8Temp = LED7Code[data];
	
	LCD_ICON_3A = (u8Temp >> 0) & 0x01;
	LCD_ICON_3B = (u8Temp >> 1) & 0x01;
	LCD_ICON_3C = (u8Temp >> 2) & 0x01;
	LCD_ICON_3D = (u8Temp >> 3) & 0x01;
	LCD_ICON_3E = (u8Temp >> 4) & 0x01;
	LCD_ICON_3F = (u8Temp >> 5) & 0x01;
	LCD_ICON_3G = (u8Temp >> 6) & 0x01;
}
#endif

#ifdef LCD_ICON_4A
void DisplayDigital_4(u8 data)
{
	u8 u8Temp = LED7Code[data];
	
	LCD_ICON_4A = (u8Temp >> 0) & 0x01;
	LCD_ICON_4B = (u8Temp >> 1) & 0x01;
	LCD_ICON_4C = (u8Temp >> 2) & 0x01;
	LCD_ICON_4D = (u8Temp >> 3) & 0x01;
	LCD_ICON_4E = (u8Temp >> 4) & 0x01;
	LCD_ICON_4F = (u8Temp >> 5) & 0x01;
	LCD_ICON_4G = (u8Temp >> 6) & 0x01;
}
#endif

头文件中

作用:
防止头文件被多次包含,出现错误。

#ifndef <标识> 
#define <标识>
 
#endif

其中 标识 可以自由命名,一般用头文件名命名。规则一般是头文件名全大写,前后加下划线,并把文件名中的“.”也变成下划线

如下:

#ifndef _THERMOSTAT_H_
#define _THERMOSTAT_H_

#endif
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王蒟蒻

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值