标志位的设置与判断

以设置区分不同界面的标志位为例
这里应用场景为同时只能存在一个界面,那么就涉及到标志位的清零与置1操作以及该标志位是否为1

#define _BIT0	0x0001
#define _BIT1	0x0002
#define _BIT2	0x0004
#define _BIT3	0x0008
#define _BIT4	0x0010
#define _BIT5	0x0020
#define _BIT6	0x0040
#define _BIT7	0x0080
#define _BIT8	0x0100
#define _BIT9	0x0200
#define _BIT10	0x0400
#define _BIT11	0x0800
#define _BIT12	0x1000
#define _BIT13	0x2000
#define _BIT14	0x4000
#define _BIT15	0x8000
//  设置标志位
unsigned int g_u16PageFlag;
#define SetPage0Flag()       	{g_u16PageFlag&=_BIT0;g_u16PageFlag|=_BIT0;}
#define SetPage1Flag()      	{g_u16PageFlag&=_BIT1;g_u16PageFlag|=_BIT1;}
#define SetPage2Flag()      	{g_u16PageFlag&=_BIT2;g_u16PageFlag|=_BIT2;}
#define SetPage3Flag()        	{g_u16PageFlag&=_BIT3;g_u16PageFlag|=_BIT3;}
#define SetPage4Flag()        	{g_u16PageFlag&=_BIT4;g_u16PageFlag|=_BIT4;}
#define SetPage5Flag()        	{g_u16PageFlag&=_BIT5;g_u16PageFlag|=_BIT5;}
#define SetPage6Flag()        	{g_u16PageFlag&=_BIT6;g_u16PageFlag|=_BIT6;}
#define SetPage7Flag()       	{g_u16PageFlag&=_BIT7;g_u16PageFlag|=_BIT7;}
#define SetPage8Flag()      	{g_u16PageFlag&=_BIT8;g_u16PageFlag|=_BIT8;}
#define SetPage9Flag()      	{g_u16PageFlag&=_BIT9;g_u16PageFlag|=_BIT9;}
#define SetPage10Flag()         {g_u16PageFlag&=_BIT10;g_u16PageFlag|=_BIT10;}
#define SetPage11Flag()        	{g_u16PageFlag&=_BIT11;g_u16PageFlag|=_BIT11;}
#define SetPage12Flag()        	{g_u16PageFlag&=_BIT12;g_u16PageFlag|=_BIT12;}
#define SetPage13Flag()        	{g_u16PageFlag&=_BIT13;g_u16PageFlag|=_BIT13;}
#define SetPage14Flag()       	{g_u16PageFlag&=_BIT14;g_u16PageFlag|=_BIT14;}
#define SetPage15Flag()      	{g_u16PageFlag&=_BIT15;g_u16PageFlag|=_BIT15;}

//  判断标志位
#define IsPage0()       		(g_u16PageFlag&_BIT0)
#define IsPage1()      			(g_u16PageFlag&_BIT1)
#define IsPage2()      			(g_u16PageFlag&_BIT2)
#define IsPage3()        		(g_u16PageFlag&_BIT3)
#define IsPage4()        		(g_u16PageFlag&_BIT4)
#define IsPage5()        		(g_u16PageFlag&_BIT5)
#define IsPage6()        		(g_u16PageFlag&_BIT6)
#define IsPage7()       		(g_u16PageFlag&_BIT7)
#define IsPage8()      			(g_u16PageFlag&_BIT8)
#define IsPage9()      			(g_u16PageFlag&_BIT9)
#define IsPage10()           	(g_u16PageFlag&_BIT10)
#define IsPage11()        		(g_u16PageFlag&_BIT11)
#define IsPage12()        		(g_u16PageFlag&_BIT12)
#define IsPage13()        		(g_u16PageFlag&_BIT13)
#define IsPage14()       		(g_u16PageFlag&_BIT14)
#define IsPage15()      		(g_u16PageFlag&_BIT15)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值