![](/img/trans.png)
[英]In C++, why does true && true || false && false == true?
[英]c++ Why is this true and not false?
我試圖理解為什么! ( ( true || false ) && false )
! ( ( true || false ) && false )
是true
而不是false
但我似乎無法弄清楚。
true || false == true
true && false == false
!false == true
! ( ( true || false ) && false )
等於
! ( ( true ) && false )
這是
! ( false )
這是
true
試着一一通過:
! ( ( true || false ) && false )
3 ( ( 1 ) 2 )
1) true || false
true || false
=> true 因為如果其中至少一個為真,則為真。
2) true && false
=> false 因為只有當兩者都為真時才為真,即如果其中至少一個為假,則計算結果為假。
3) !(false)
=> true 因為 '!' 表示否定,假的否定為真,真的否定為假。
對於這些類型的布爾邏輯問題,我總是嘗試將其分解為多個步驟。
所以對於這個第一個條件
( true || false )
這等於 true,因為您說的是 true 或 false
現在可以將下一個條件讀作
( true && false )
哪個是假的
最后一點使它為真,而不是假的是 !
最后一部分可以等價於
!( false )
這 ! 翻轉值,因此最終語句為真
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.