- Windows VS2008 下,float型精度是7位小數.
- 在精度范圍內,可以直接用< , > , == 邏輯判斷兩個float類型數據的大小.
- 在精度范圍之外,多余數位將被忽略,從而分不同情況 :
- 以下是小數位為9,8,7的驗證.結果證明 7位為有效小數位數,>7位的都忽略.
- 若多余位之前的有效位數字相等 , 則判斷為兩數相等 , 既多余位已經不起作用;
- 若多余位之前的有效位數字不等, 則依據有效位進行> ,<, == ,>= ,<= 的邏輯判斷.
void floatSub() { float a = 0.854698762; float b = 0.854698763; if (a < b) { cout<<"a < b\n"; } else if (a == b) { cout<<"a = b\n"; } else cout<<"a > b\n"; }
void floatSub() { float a = 0.85462836; float b = 0.85462839; if (a < b) { cout<<"a < b\n"; } else if (a == b) { cout<<"a = b\n"; } else cout<<"a > b\n"; }
void floatSub() { float a = 0.8546286; float b = 0.8546289; if (a < b) { cout<<"a < b\n"; } else if (a == b) { cout<<"a = b\n"; } else cout<<"a > b\n"; }
7位以下小數位都可以進行比較邏輯運算.