C++ 常用逻辑运算符

一、C++ 常用逻辑运算符

运算符 名称 说明 示例
&& 逻辑与 两边都为真,结果才为真 a > 0 && b > 0
` ` 逻辑或
! 逻辑非 取反 !(a > b)

二、真值表

A B A && B `A B` !A
true true true true false
true false false true false
false true false true true
false false false false true

三、使用示例

复制代码
复制代码
复制代码
复制代码
#include <iostream>
using namespace std;

int main() {
    int a = 5, b = 10;

    if (a > 0 && b > 0) {
        cout << "a 和 b 都大于 0" << endl;
    }

    if (a > 0 || b < 0) {
        cout << "a > 0 或 b < 0 成立" << endl;
    }

    if (!(a == b)) {
        cout << "a 不等于 b" << endl;
    }

    return 0;
}

四、短路求值(Short-Circuit Evaluation)

C++ 中逻辑运算符有 短路特性

1️⃣ &&(逻辑与)

  • 如果左边为 false,右边 不会执行
复制代码
复制代码
复制代码
复制代码
if (a != 0 && 10 / a > 2) {
    // 安全,避免除零错误
}

2️⃣ ||(逻辑或)

  • 如果左边为 true,右边 不会执行
复制代码
复制代码
复制代码
复制代码
if (a == 0 || b / a > 1) {
    // 同样避免除零
}

五、逻辑运算符 vs 位运算符(易混淆)

逻辑运算符 位运算符 区别
&& & 逻辑 vs 按位
` `

❌ 错误示例:

复制代码
复制代码
复制代码
复制代码
if (a & b)   // 这是位运算,不是逻辑判断

✅ 正确写法:

复制代码
复制代码
复制代码
复制代码
if (a && b)

六、优先级(简化版)

从高到低:

复制代码
复制代码
复制代码
复制代码
!  → 算术运算符 → 关系运算符 → &&
→ || → 赋值运算符

建议:不确定时加括号

复制代码
复制代码
复制代码
复制代码
if ((a > 0) && (b < 10))

相关推荐
可编程芯片开发3 分钟前
UPFC统一潮流控制器的simulink建模与仿真
算法
小小仙子39 分钟前
矢量网络分析仪如何测试S参数的?
人工智能·算法·机器学习
Wang's Blog1 小时前
Go-Zero项目开发24: 基于Bitmap实现群聊消息已读未读
开发语言·后端·golang
中微极客2 小时前
降维算法75倍加速:从PCA到稀疏字典学习的工程实践
人工智能·学习·算法
storyseek3 小时前
前缀和实现Kogge-Stone算法
数据结构·算法
ziguo11223 小时前
深入浅出 C/C++ 数据类型:从入门到踩坑
linux·c语言·c++·windows·visual studio
元Y亨H3 小时前
开发者必须掌握的十大核心算法
算法
元Y亨H3 小时前
深度解构:数据结构与算法的理论基石与工程演进
数据结构·算法
白色冰激凌3 小时前
[SECS/GEM研究] (三)SECS-I 串口上消息怎么分块和重传
c++·secs/gem
元Y亨H3 小时前
数据结构与算法的通俗指南
数据结构·算法