2016-09-25 73 views
1

我有一個聲明,如果我需要檢查多個條件如何檢查if語句中的兩個條件?

例如:

if (a == 0 and b != 0 or c != 0) 
{ 
    //do something 
} 

什麼是實現這一目標的最有效方法是什麼?

+2

閱讀有關C語言運算符或「C語言運算符」或「C語言運算符」或...... *嘆息* – alk

+0

提到「最有效率」,在寫作方面do if(!a && b || c) {...}'。 – alk

+0

文檔在這裏:http://stackoverflow.com/documentation/c/3073/selection-statements#t=201609251016136318021 – alk

回答

3
if (a == 0 && b != 0 || c != 0) 
{ 
    //do something 
} 
+0

謝謝,我在維基百科上看到了這個,但它說你可以使用&&或「和」。我甚至找不到「或」的符號。對不起的問題! – sampy

+1

呃。這很可怕,這讓讀者猜測是否(a == 0 && b!= 0)|| c!= 0'或者'a == 0 &&(b!= 0 || c!= 0)'。 – jamesdlin

+0

@jamesdlin:'&&'優先於'||',它「更緊密地綁定」。 – alk

1

在C中,「AND」的邏輯運算符是&&

類似地,對於「或」,它是||

評價某些部分作爲單獨的語句,使用括號: 在a && (b || c)a將首先評估,如果屬實那麼(b || c)將一起評估。

+0

'和'和'&&'一樣,'''和'||'也是一樣 –

+0

是的,你是對的。 –

+0

我刪除了我犯的錯誤。 –