float.h(c標準庫)

 

 1 /*my_float.h*/
 2 /*
 3  * 系統保留浮點數一種類型,因此c語言對任何涉及浮點運算都產生double類型的結果,
 4  * 即時連個操做數都爲float類型。
 5  *
 6  * 上溢、下溢、有效值丟失對浮點算術是固有的。
 7  * 變化,不一樣機器相同的浮點運算結果可能不一樣。依賴於兩個機器的舍入方式。通常機器
 8  * 使用快餐式浮點算術計算方法。
 9  * float.h主要是補充limit.h
10  * float.h的宏,通常最複雜的數值程序才需關心。
11  */
12 #ifndef _MY_FLOAT_H_
13 #define _MY_FLOAT_H_
14 #ifndef _YVALS_H_
15 #include "yvals.h"
16 #endif
17 
18 typedef struct {
19     int my_ddig, my_dmdig, my_dmax10e, my_dmaxe, my_dmin10e, my_dmine;
20     union {
21         unsigned short us[5];
22         float f;
23         double d;
24         long double ld;
25     }my_deps, my_dmax, my_dmin;
26 }My_dvals;
27 /*
28  * float.h經過聯合來檢查浮點。無論何種狀況最大浮點數的最高位有效數字的值應該等於0X7FEF,其餘等於0XFFFF。
29  * 例如,x86格式double應該爲 0XFFFF 0XFFFF 0XFFFF 0X7FEF
30  * 浮點數存儲方式不明白,看其餘資料IEEE 754標準
31  */
相關文章
相關標籤/搜索