关于短路操作

简介: 在逻辑与&& 或者 逻辑或 || 的运算中,表达式1满足要求,表达式2不再运算的操作即为短路操作

一、什么是短路操作


在逻辑与&& 或者 逻辑或 || 的运算中,表达式1满足要求,表达式2不再运算的操作即为短路操作


二、详解


例1:逻辑与&&,若表达式1为假,则整个表达式结果一定为假,表达式2不再计算


如下,a < 0 为假,整个表达式结果为假,b = a 不再计算,结果为 a = 5,b = 0 ,c = 0

int main()
{
    int a = 5;
    int b = 0;
    int c = a < 0 && (b = a);
    printf("%d %d %d", a, b, c);//5 0 0
    return 0;
}

例2:逻辑或 || ,若表达式1为真,则整个表达式结果一定为真,表达式2不再计算


如下,a > 0为真,整个表达式结果为真,b = a不再计算,结果为 a = 5,b = 0 ,c = 1

int main()
{
    int a = 5;
    int b = 0;
    int c = a < 0 && (b = a);
    printf("%d %d %d", a, b, c);//5 0 0
    return 0;
}


目录
相关文章
|
6月前
什么是短路表达式?
什么是短路表达式?
108 1
|
6月前
|
JavaScript
短路表达式
短路表达式 短路表达式
55 0
|
6月前
使用运算符来执行各种操作
使用运算符来执行各种操作
34 0
|
6月前
|
Java
逻辑运算符和短路求值
逻辑运算符和短路求值
45 0
|
5月前
|
C语言
C语言逻辑操作符的短路问题
C语言逻辑操作符的短路问题
|
6月前
|
C语言
逻辑操作符中的短路
C语言逻辑运算符按左到右顺序执行,先评估左侧表达式。如果左侧满足条件,右侧表达式不会求值,此现象称为短路。例如,`month &gt;= 3 && month &lt;= 5`,若month小于3,右侧不执行。同样,对于`month == 12 || month == 1 || month == 2`,若month为12,不需要检查其余条件。练习题中未提供具体代码,但给出了结果:a=2, b=3, c=3, d=5。
43 0
|
存储
短路时间常数法
短路时间常数法是一种用于分析电路的动态响应的方法,特别适用于分析电路的短路响应。它基于电路的短路时间常数,用于描述电路响应的快慢程度。
325 0
逻辑判断使用
逻辑判断使用
44 1
|
编译器
【运算符+逻辑控制】
【运算符+逻辑控制】
66 0
|
Go 开发者
短路与和短路或|学习笔记
快速学习短路与和短路或