2016-03-16 27 views
-1

我只是通過下面的語句來:什麼漂浮在一個printf的表現手法

printf("%d days total: %.1f%% were below freezing.\n",all_days, 100.0 * (float) cold_days/all_days); 

我需要在上述語句中使用(float)printf表達的解釋。如果您有任何參考,請將其鏈接。

+0

這是一個稱爲* type casting *的功能。 – jxh

回答

1

還值得注意的是,這個演員陣容很可能是無用的100.0 * (float) cold_days/all_days將執行從左到右,並且由於100.0已經是浮點數(double),所以100.0 * cold_days的結果也將是double

而且由於float對於printf(以及任何其他可變參數函數)升級爲double,因此該類型是冗餘的。

1

您將整數浮點數與(float) cold_days一起浮動。

瞭解更多鑄造信息,請登錄this link