當通過用if(值 0)進行比較的時候 ,要看這個值是什麼型別的 具體如下:
1. 當值為 int, char型的時候 應用 if(int_val == 0)或者 if(int_val != 0)
2. 當值為指標變數的時候 應用if(null == p)或者if(null != p) 注:null最好寫在左邊 因為如果在右邊的話容易寫成 p=null 編譯不會錯 但在左邊就會報錯!
3. 當值為bool型的時候 應用 if(bool_val) 或者 if(!bool_val)
4. 當值為float型的時候 應用if( (float_val >= -num ) && float_val <= num ) num 為定義好的精度 eg:#define num 0.00001
與零值比較
以下摘自 林銳 高質量c c程式設計指南 布林變數與零值比較 不可將布林變數直接與true false或者1 0進行比較。假設布林變數名字為flag,它與零值比較的標準if語句如下 if flag 表示flag為真 if flag 表示flag為假 整型變數與零值比較 應當將整型變數用 或 直接與0...
變數與零值比較
l 不可將布林變數直接與true false或者1 0進行比較。根據布林型別的語義,零值為 假 記為false 任何非零值都是 真 記為true true的值究竟是什麼並沒有統一的標準。例如visual c 將true定義為1,而visual basic則將true定義為 1。假設布林變數名字為fl...
各變數與零值比較!!!
一 bool變數與零值比較。bool型別的定義中,零值為假 false 任何非零值都為真!所以不可將bool變數直接與true,false,0,或者1來比較!比如 char flag a if flag printf true n else if flag printf false n 二 整型變數...