C语言的“短路”现象

简介: C语言的“短路”现象

在C语言中有一个很有趣的短路现象:



对于这么一个代码,很多人的第一反映的答案就是:(每一个变量都+1,最后d也是1)

即:a=1,b=2,c=3,d=1;(在C语言中0表示假,非0表示真,但是一般直接用1表示真)

但是答案真的是这样吗?我们来看一下:


可以看出答案好像并不是像我们想的那样哦;


我们再看下面这个代码:



答案是 a=2,b=2,c=3,d=1;   ???



好像也不是,那再来:



答案是: a=2,b=1,c=1,d=1;     ???



也不是,那这说明了什么问题呢?


这就是C语言中的短路现象。




相关文章
|
编译器 C语言
c语言你不得不知道的内存操作函数(含模拟实现)
c语言你不得不知道的内存操作函数(含模拟实现)
97 0
|
5月前
|
C语言
【C语言】信号
【C语言】信号
51 0
|
7月前
|
C语言
C语言逻辑操作符的短路问题
C语言逻辑操作符的短路问题
|
6月前
|
Rust 算法 编译器
|
8月前
|
安全 NoSQL 小程序
嵌入式C语言中整形溢出问题分析
嵌入式C语言中整形溢出问题分析
90 0
|
人机交互 C语言
拿捏c语言循环
拿捏c语言循环
41 0
|
编译器 测试技术 C语言
【C语言航路外传】隐式转换与优先级的那点事(你程序总是出bug的一个重要原因)
【C语言航路外传】隐式转换与优先级的那点事(你程序总是出bug的一个重要原因)
102 0
|
编译器 C语言
C语言杂碎知识 最后两个肯定你不知道
C语言杂碎知识 最后两个肯定你不知道
|
机器学习/深度学习 人工智能 算法
C语言百日千题系列之《忘情水题》第一日
C语言百日千题系列之《忘情水题》第一日
C语言百日千题系列之《忘情水题》第一日
|
C语言
c语言选择结构典型例题
选择结构程序 判断某一年是否是闰年 先分析闰年的条件: 1)能被四整除,但不能被100整除的年份都是闰年,如1996年,2008年,2012年,2048年; 2)能被400整除的年份是闰年,如1600年,2000年是闰年。 不符合这两个条件的年份都不是闰年。