扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
C语言中“||”表示逻辑操作符(或),它的操作数是布尔型,即只有“0”(表示false)和“1”(表示true)两个数值。C语言规定,在逻辑运算中,所有非0的数值都被看做1处理。
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:主机域名、网络空间、营销软件、网站建设、乐都网站维护、网站推广。
在 C 语言中,“||”表示逻辑操作符(或),它的操作数是布尔型,即只有“0”(表示 false)和“1”(表示 true)两个数值。C 语言规定,在逻辑运算中,所有非 0 的数值都被看成 1 处理。
(推荐教程:C语言教程)
与之类似的操作符是“|”,它是位操作符(或),其操作数是位序列。位序列可以是字符型、整型与长短整型等(通常情况下选择无符号整型)。在位运算中,相应的位之间进行逻辑运算,因此,从逻辑上讲,位运算过程包含多个逻辑运算过程。
下面我们通过一个示例来了解两者之间的区别。
#includeint main (void) { unsigned int x = 0x1101; unsigned int y = 0x1100; /*逻辑操作*/ printf("sizeof(x || y): %d\\n", sizeof(x || y)); if(x||y) { printf("x || y : %d(True) \\n", x||y); } else { printf("x || y : %d(False) \\n", x||y); } /*位操作*/ printf("sizeof(x | y): %d\\n", sizeof(x | y)); printf("x | y : %x \\n", x|y); return 0; }
因为变量 x 与变量 y 都不为 0,所以执行语句 if(x||y) 返回 1。而当执行 x|y(即 1101|1100)时,相应的位之间逐一地进行逻辑运算(或),因此所得到的结果为 1101。
程序运行结果为:
sizeof(x || y): 4 x || y : 1(True) sizeof(x | y): 4 x | y : 1101
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流