float與double占多少字節?
float:浮點型數據類型,FLOAT 數據類型用于存儲單精度浮點數或雙精度浮點數。此表示形式為 float 類型提供了一個大約在 -3.4E+38 和 3.4E+38 之間的范圍。
double(雙精度浮點型)是計算機使用的一種資料型別。它可以表示十進制的15或16位有效數字,負值取值范圍為 -1.7976E+308 到 -4.94065645841246544E-324,正值取值范圍為 4.94065645841246544E-324 到 1.797693E+308。
double精度高,有效數字16位,float精度7位。但double消耗內存是float的兩倍,double的運算速度比float慢得多。
擴展資料
如果存儲比精度更重要,請考慮對浮點變量使用 float 類型。相反,如果精度是最重要的條件,則使用 double 類型。
浮點變量可以提升為更大基數的類型(從 float 類型到 double 類型)。當對浮點變量執行算術時,通常會出現提升。此算術始終以與具有最高精度的變量一樣高的精度執行。例如,請考慮下列類型聲明:
float f_short;double f_long;long double f_longer;f_short = f_short * f_long;
在前面的示例中,變量f_short提升到類型 double 并且與f_long相乘;然后,結果舍入到類型 float,然后賦給f_short。
在以下示例中(使用前面示例中的聲明),將以浮點(32 位)精度對變量執行算術;結果隨后將提升到 double 類型:
f_longer = f_short * f_short;
double f_long;
long double f_longer;
f_short = f_short * f_long;
在前面的示例中,變量f_short提升到類型 double 并且與f_long相乘;然后,結果舍入到類型 float,然后賦給f_short。
在以下示例中(使用前面示例中的聲明),將以浮點(32 位)精度對變量執行算術;結果隨后將提升到 double 類型:
f_longer = f_short * f_short