C++中的运算符总结(4):逻辑运算符(上)

C++中的运算符总结(4):逻辑运算符(上)

8、逻辑运算 NOT、 AND、 OR 和 XOR

逻辑 NOT 运算用运算符!表示,用于单个操作数。表 1是逻辑 NOT 运算的真值表,这种运算将提供的布尔标记反转:

操作数 NOT 运算的结果
false true
true false

表1 逻辑 NOT 运算的真值表

AND、 OR 和 XOR 等运算需要两个操作数。仅当两个操作数都为 true 时,逻辑 AND 运算的结果才为 true。表 2 说明了逻辑 AND 运算的结果:

操作数 1 操作数 2 操作数 1 AND 操作数 2 的结果
false false false
true false false
false true false
true true true

表2 逻辑 AND 运算的真值表

逻辑 AND 运算用运算符&&表示。
只要有一个操作数为 true,逻辑 OR 运算的结果就为 true,如表 3 所示:

操作数 1 操作数 2 操作数 1 OR 操作数 2 的结果
false false false
true false true
false true true
true true true

表3 逻辑 OR 运算的真值表

逻辑 OR 运算用运算符||表示。
逻辑 XOR(异或)运算与逻辑 OR 运算稍有不同,有且只有一个操作数为 true 时,这种运算的结果才为 true,如表 4 所示:

操作数 1 操作数 2 操作数 1 XOR 操作数 2 的结果
false false false
true false true
false true true
true true false

表4 逻辑 XOR 运算的真值表

C++提供了按位 XOR 运算,用运算符^表示。这个运算符对操作数相应的各位执行 XOR 运算。

———————————————————————————————————————————————————————————

请看下面的句子:
• 如果明天下雨且没有公交车,我就不能去上班;
• 如果折扣很高或奖金创纪录,我就能买下那辆车。
在编程中,您也需要使用这样的逻辑结构,根据运算的结果决定程序的后续流程。 C++提供了逻辑运算符 AND 和 OR,您可在条件语句中使用它们,根据条件改变程序的流程。
以下的示例程序演示了逻辑运算符 AND 和 OR 的工作原理:

#include 
using namespace std;

int main()
{
    cout << "Enter true(1) or false(0) for two operands:" << endl;
    bool op1 = false, op2 = false;
    cin >> op1;
    cin >> op2;

    cout << op1 << " AND " << op2 << " = " << (op1 && op2) << endl;
    cout << op1 << " OR " << op2 << " = " << (op1 || op2) << endl;

    return 0;
}

输出:

Enter true(1) or false(0) for two operands:
1
0
1 AND 0 = 0
1 OR 0 = 1

再次运行的输出:

Enter true(1) or false(0) for two operands:
1
1
1 AND 1 = 1
1 OR 1 = 1

分析:

该程序演示了逻辑运算符 AND 和 OR 的工作原理,但没有演示如何使用它们来做决策。

该文章会更新,欢迎大家批评指正。

推荐一个零声学院免费公开课程,个人觉得老师讲得不错,
分享给大家:Linux,Nginx,ZeroMQ,MySQL,Redis,
fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,
TCP/IP,协程,DPDK等技术内容,点击立即学习:
服务器课程:C++服务器

你可能感兴趣的:(C++编程基础,c++)