65,211
社区成员
发帖
与我相关
我的任务
分享#define ATTR_1 0x00000000
#define ATTR_2 0x00000001
#define ATTR_3 0x00000002
#define ATTR_4 0x00000004#include <conio.h>
#define ATTR_1 0x00000001//最好别用0,0一般不用于有特定意义的地方
#define ATTR_2 0x00000002
#define ATTR_3 0x00000004
#define ATTR_4 0x00000008
int main(void)
{
int flag = 0;
flag = ATTR_1 | ATTR_2; //假设使用了控件1和2,就让flag等于ATTR_1位或ATTR_2,即flag保存ATTR_1和ATTR_2中的'1'比特
if(flag & ATTR_1) //flag位与ATTR_1,如果非零,说明flag含有ATTR_1的'1'比特,即使用了控件1
{
_cputs("BOX 1 is chosen\n");
}
if(flag & ATTR_2) //同理
{
_cputs("BOX 2 is chosen\n");
}
if(flag & ATTR_3)
{
_cputs("BOX 3 is chosen\n");
}
if(flag & ATTR_4)
{
_cputs("BOX 4 is chosen\n");
}
return 0;
}int i = 0x04;//00000100
//check
if(i&i<<2) //i<<2 mean 4!
cout << "1 been set!";
else
cout << "1 not been set!";