C語言(浮點精度)
關於C語言的浮點數精度問題,很多人存在誤解,他們往往認為精度指的是float、double和long double三種資料型別,這是片面的。
拓展:
浮點數的二進位制儲存細節:
對於每個不同的浮點數,都有相應的最小可辨識精度(即δ),此最小可辨識精度隨著該浮點數的數值變化而變化,具體究竟是多少要具體分析該浮點數的二進位制儲存內部細節,找到其指數域之後才能確定,我們根據這個最小可辨識精度才能明確判定程式碼中所有對此浮點數的運算是否有效,否則可能會由於舍入的問題存在而在邏輯上存在歧義。
下面的程式碼完美詮釋了以上結論: