C語言 判斷相等的條件語句,爲什麼把數字放在前面?

      代碼寫久了,經常有這樣一種疑惑,經常能在別人的代碼,或者庫中見到這樣的寫法,0 == Tick 或者1 == Number ,爲什麼不寫成 Tick == 0 或者 Number == 1 呢?

      相信很多人都遇到過這樣的BUG,程序邏輯與設想的不太一樣,但是編譯卻沒有報錯,仔細檢查後發現,原來是把 Tick == 0 寫成了Tick = 0,判斷條件的語句成了賦值語句,編譯器當然不會報錯,但是程序已經不能按照預先的設想來跑了。

      當判斷語句把數字寫在前面時,即使敲代碼的過程中漏掉了一個=,寫成了 0 = Tick,編譯器會立即報錯,因爲常量不能再被賦值,避免了日後找BUG的痛苦。所以經常能見到0 == Tick 或者1 == Number這種寫法,也就不奇怪了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章