本文主要是介绍按位或的实际使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
int result = 0;
if (cs_config.enable_http)
{result |= 1;
}
if (cs_config.enable_https)
{result |= 2;
}
//例子2
enum HttpType
{IPV4 = 1,IPV6 = 2,HTTP = 4,HTTPS = 8
};
int type = IPV4;
if (setting.enable_http)
{type |= HTTP;
}
if (setting.enable_https)
{type |= HTTPS;
}
g_settings->SetOptionValue(InternetHTTPTypeKey, type);
按位或(OR) 按位或处理两个长度相同的二进制数,两个相应的二进位中只要有一个为1,该位的结果值为1。例如
0101(十进制5) OR 0011(十进制3) = 0111(十进制7)
在C类程序设计语言中,按位或操作符是"|"。这一操作符需要与逻辑或运算符(||)区别开来。按位或能够将每一位看做旗标;在二进制数中的每一位可以表示不同的布尔变量。应用按位或操作可以将二进制数的某一位设为1。例如
0010(十进制2) 能够看做包含4个旗标的组合。第1,2,4旗标为0;第3个旗标为1。利用按位或可以将第1个旗标设置为1,而其他旗标不变。
0010(十进制2) OR 1000(十进制8) = 1010(十进制10) 这一技巧通常用来保存程序中的大量布尔变量。
这篇关于按位或的实际使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!