C语言中“||”是什么意思


本文摘自PHP中文网,作者V,侵删。

C语言中“||”表示逻辑操作符(或),它的操作数是布尔型,即只有“0”(表示false)和“1”(表示true)两个数值。C语言规定,在逻辑运算中,所有非0的数值都被看做1处理。

在 C 语言中,“||”表示逻辑操作符(或),它的操作数是布尔型,即只有“0”(表示 false)和“1”(表示 true)两个数值。C 语言规定,在逻辑运算中,所有非 0 的数值都被看成 1 处理。

(推荐教程:C语言教程)

与之类似的操作符是“|”,它是位操作符(或),其操作数是位序列。位序列可以是字符型、整型与长短整型等(通常情况下选择无符号整型)。在位运算中,相应的位之间进行逻辑运算,因此,从逻辑上讲,位运算过程包含多个逻辑运算过程。

下面我们通过一个示例来了解两者之间的区别。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

#include <stdio.h>

int 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。

阅读剩余部分

相关阅读 >>

eof在C语言中表示什么

C语言中的“?:”是什么运算符

C语言conio.h是什么意思

C语言的源程序不必通过编译就可以执行对吗

C语言有且唯一的函数是什么?

C语言程序的基本结构是什么

C语言puts函数用法是什么?

C语言怎么编译(详细示例)

C语言中的注释符号是什么

学编程应该知道的C语言中的复数操作

更多相关阅读请进入《C语言》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...