1. 程式人生 > >浮點數(實數)中單精度與雙精度區別

浮點數(實數)中單精度與雙精度區別

#在記憶體中儲存格式的區別:
folat單精度:1位訊號(0為正1為負),8位1位元組為指數,最後23位為小數部分
在這裡插入圖片描述
##double雙精度:1位訊號(0為正1為負),11位為指數,最後23位為小數部分
在這裡插入圖片描述
從儲存的不同可以看出單精度在長度上已經小雙精度一倍,當對資料型別的精度要求不高(±3X2(38))時用單精度就可以,當對資料需要多次迭代使用需要高精度的小數值(±3X2(308))時可以用雙精度或long double型別定義變數或常量;
在實際的開發當中要視程式對資料的精確度要求和對儲存空間的要求而定使用單精度或者雙精度,當然在C++程式設計中可以使用setprecision()方法來實現指定精度位數,注意加標頭檔案#include;