2012-07-17 24 views
0

我正在打印雙倍計時器的輸出。如何顯示沒有指數的雙精度?

我得到1.84e-308作爲輸出。

我與printf("Time: %4.3g\n",tm.getTime());

+2

** 1.84E-308 **無指數爲(大約)'0.0000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000184'(忽略插入格式化空格) – pmg 2012-07-17 11:04:33

+3

,什麼輸出你的願望是什麼? 0.000000 ... 0000000184? – hroptatyr 2012-07-17 11:04:54

回答

2

打印您是否嘗試過使用%f

printf("Time: %4.3f\n",tm.getTime()) 
+0

是的,我已經試過打印0.000 – 2012-07-17 10:57:35

+2

@AJ。這是一個非常非常小的數字,非常*非常接近於0,所以0.00在這裏並不出乎意料。 – Levon 2012-07-17 11:02:56

-1

這裏,您必須將數據類型格式更改爲double。寫編碼如下所述:

的printf( 「時間:%4.3克\ n」,tm.getTime(double_variable))

您可以從上面的編碼得到1.84E-308。

0

printf("Time: %400.399f\n",tm.getTime())

是嗎?