我真的不明白如何解释以下逻辑表达式

时间:2017-10-14 02:26:31

标签: c

这是我不理解的代码

谢谢!!

Enter integers a,b,c: 1 1 1
!a || !b++ && c: False 
(a-1 || b/2) && (c*=2): True 
(a-- || --b) && (c+=2): True
a || !(b && --c): False

1 个答案:

答案 0 :(得分:1)

C中有一些概念。首先是&&||的短路。然后后增量或预增量。最后,在C中,整数可用于逻辑运算。

您可以在大多数关于C编程的书籍中找到这些内容。

例如,!a || !b++ && c,a为1,!a为0或false。 !b ++也将被评估为假,因为b最初为1,而b将使其为0.这就是最终答案为假的原因。