在C语言中,定义了“逻辑与”和“逻辑或”的操作。逻辑与运算符是“&&”,可以有表达式“a && b”,那么,当a和b的值都是非0值的时候,表达式的值才为1;如果a和b的值中,有一个值为0,则表达式的值就是0。那么,我们可以归纳逻辑与的操作如下表。

逻辑与运算规则表

操作数a的值

操作数b的值

与运算表达式

表达式的值

0

0

a && b

0

0

非0

0

非0

0

0

非0

非0

1

可以看到,“逻辑与”的操作与“按位与”操作很相似。但是,“按位与”操作的是二进制中的一个位数据,而这里的“逻辑与”操作,操作的是一个数值,该操作数值只有0和非0(非0可以是正数和负数)这样的状态。

同理,“逻辑或”的操作与“按位或”的操作也很相似。“按位或”操作的是二进制中的一个位数据,“逻辑或”操作的是一个数值。操作数只有0和非0的 状态。我们可以归纳逻辑或的运算如下表。

逻辑或运算规则表

操作数a的值

操作数b的值

与运算表达式

表达式的值

0

0

a || b

0

0

非0

1

非0

0

1

非0

非0

1

可以看到,当a和b都是0值的时候,表达式的值才为0;如果a和b中有一个数为非0值,则表达式的值为1。如下测试的例子:

逻辑与、或运算符

 

测试运行的结果如下:

逻辑与、或运算符

 

可以看到,逻辑与和逻辑或运算符,可以操作变量,组成一个表达式。

更多的交流可以访问:www.mylinux.vip   加QQ:1523520001,微信:13926572996,备注:linux编程;
学习、分享更多的linux C/C++ 编程知识。

相关文章: