簡體   English   中英

c++ 為什么這是真的而不是假的?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM