C语言中的短路现象

短路现象1

比如有以下表达式

 a && b && c

只有a为真(非0)才需要判断b的值;只有a和b都为真,才需要判断c的值。

举例

求最终a、b、c、d的值。

main(){ int a,b,c,d;

 a = 0;  b = 1;  c = 2; d = a++ && b++ && --c;

 printf('a=%d b=%d c=%d d=%d\n',a,b,c,d);}

因为a++是先判断a的值再自加,而a初始值为0, 所以(a++)为假,由短路现象可知&&后面式子b++和--c就都不会执行;对于赋值语句,是先将a的值赋值给d,然后再自加,所以d的值为0,a最终为1。

执行结果:

短路现象2

比如有以下表达式

a || b || c

只要a为真(非0)就不必判断b和c;只有a为假,才需要判断b的值;只有a和b都为假,才有必要判断c的值。

举例

求最终a、b、c、d的值;

main(){ int a,b,c,d;

 a = 0;  b = 1;  c = 2; d = a++ || b++ || --c;

 printf('a=%d b=%d c=%d d=%d\n',a,b,c,d);}

因为a++是先判断a的值再自加,而a初始值为0, 所以(a++)为假,由短路现象可知,还需要继续判断 || 后面的表达式b++,b++要先判断b的值,b为1,所以b++为真,由短路现象可知,后面的式子--c就不在执行;对于赋值语句,不再是将a的值赋值给d,而是将b先赋值给d然后a和b再自加,所以d的值为1,a最终为1,b最终为2。

执行结果:

(0)

相关推荐

  • 表达式

    词条已锁定 表达式,是由数字.算符.数字分组符号(括号).自由变量和约束变量等以能求得数值的有意义排列方法所得的组合.约束变量在表达式中已被指定数值,而自由变量则可以在表达式之外另行指定数值. 分类 ...

  • do while 循环结构

    ★ do while 循环结构形式 do {          语句; } while (表达式); ★ do while 循环结构流程 首先执行语句(第 1 次): 之后求解表达式的值 如果值是 0 ...

  • Excel常用函数之IFERROR函数

    感觉前面我们在查找函数上花了好久,谁让它们被使用的频率太高呢,希望大家抽时间把前面三种查找函数的用法认真地做个对比,然后记住用法,这样绝对会胸有成竹! 今天我们继续起航,相信在学过这么多的函数之后,有 ...

  • 50例生活中的化学现象及解释!你都用得到!

    50例生活中的化学现象及解释!你都用得到!

  • 古诗词中的物理现象

     2019-07-14 引言: 古诗词是我国五千年来的文化瑰宝,许多诗词中既蕴涵着深刻的哲理,又蕴涵着丰富的物理知识,今天,我们不妨用科学的眼光,从物理学的角度来欣赏古诗词吧! 课文学习: 二千年前的 ...

  • 张铁文:字母词使用是语言接触的正常现象

    提要:只要有语言接触,两种或多种语言之间就会有交流,最直接的产物就是外来词.语言接触越频繁,外来词的数量就会越多,这是语言接触的基本规律.字母词是汉语词汇中一个比较独特的类集,其主体是汉语外来词.从字 ...

  • 初学编程,如何玩转C语言?C语言中最重要的知识献上!

    一.C语言的指针 1.指针说明 指针是包含另一变量的地址变量. (1)int *p p是一个指针,指向一个整形数. (2)int *p() p是一个函数,该函数返回一个指向整数的指针. (3)int ...

  • 冲压生产中产品不良现象产生原因及处理对策

    冲压加工是四大工艺之首,其重要性可想而知.    冲压加工不良的主要原因,造成冲压加工不良的原因良多,卷料.板料.模具的表面质量都会影响冲压加工的品质,冲压过程中的操做以及模具配件的装夹取卸等也有可能 ...

  • 检查PCB中的短路的四个步骤

    描述 在PCB设计的时候如何检查PCB中的短路,您可以采取以下重要步骤来检查PCB中的短路情况:1.在PCB中发现短路:2.在电路板上测试电路短路:3.在PCB上查找故障组件:4.破坏性地测试PCB. ...

  • c语言中结构体成员变量使用“.”符号赋值方法

    在C语言中定义结构体类型的变量时,其内部的成员变量赋值除常规的方法外,也可以通过点号"."进行赋值,如下图所示: 备注:在Linux系统上使用gcc / g++编译器调试通过,其它 ...

  • 注意:你语言中的能量将改变你的命运

    注意:你语言中的能量将改变你的命运 语言中有一种无形的力量,它无时无刻地都在影响着我们自己的生活.大部分人都没有意识到这点. 我们说出来的话是建设生命的基础,我们一直在说话却很少思考自己说话的方式:或 ...

  • R语言中的偏最小二乘回归PLS-DA

    原文链接:http://tecdat.cn/?p=8890 主成分回归(PCR)的方法 本质上是使用第一个方法的普通最小二乘(OLS)拟合来自预测变量的主成分(PC).这带来许多优点: 预测变量的数量 ...