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))

相关推荐
CoderYanger20 分钟前
Java EE 进阶:4.Spring Web MVC 入门(第一弹)
java·开发语言·前端·spring·面试·java-ee·mvc
学电子她就能回来吗22 分钟前
LeetCode Hot 100|普通数组专题学习笔记(零基础版)
笔记·算法·leetcode
用户老李24 分钟前
反向传播计算梯度举例
算法
niyongsheng25 分钟前
多智能体连续时间内路径规划:AA-SIPP(m) 的 Rust 实现与算法
算法·rust·机器人
估值探索者34 分钟前
【Python量化选股流水线 #04】选股器好不好用?「昨日候选→今日表现」回看验收
开发语言·python·股票数据·股票数据api接口
302wanger1 小时前
DeepSeek-V4.1-Flash-1017 免费用到1024,速来
算法
爱喝热水的呀哈喽2 小时前
HEJIAN RESEARCH
开发语言·matlab
白露与泡影2 小时前
后端 Java 面试核心八股汇总|高频面试题 + 解析,覆盖基础到进阶
java·开发语言·面试
lisw052 小时前
微分与积分的本质区别解析
算法·数学建模·极限编程
xifangge20252 小时前
基于 JavaScript 实现 CNC 数控切削参数与螺纹公差纯前端核算引擎
开发语言·前端·javascript