在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++ 编程知识。