1. 程式人生 > >C語言中邏輯運算子的陷阱

C語言中邏輯運算子的陷阱

我們經常使用邏輯運算子來進行諸如此類的運算:

ifa == b && b == c )

這裡使用&& 來保證兩個表示式都為trueif裡面的語句才被執行。
但是,必須注意的是,當使用類似於a==b&&b++ 時,只有a==bfalse則,b++不會被執行。

C語言中存在類似的機制來提高程式碼的執行速度,但卻因此帶來了這樣的問題:* 一但&&左邊為假(此時就可以的判斷整個表示式的值為false),右邊便不會再執行 *

類似的:
對於a == b|| a++:若a==btrue,a不會被加1