課程
/后端開發
/C
/C語言入門
求大神解答,單精度型與雙精度型的區別
2017-10-09
源自:C語言入門 2-7
正在回答
單精度用float定義,雙精度用double定義。ANSI標準僅規定了double至少要和float一樣長,同時規定所有的浮點類型至少能夠容納從-10^37到10^37之間的任意值。所以,不同的編譯器可能會有不同的情況。一般來說,float是是4個字節的,double是8個字節的。float用4個字節32位二進制表示,單精度數大約有7位十進制有效數字,數值的表示范圍約為±(3.4×10^38…3.4×10^38); double用8個字節64位二進制表示,雙精度數大約有16位十進制有效數字,數值的表示范圍約為±(1.7×10^308…1.7×10^308);
單精度占用4字節內存空間,表示范圍是10的負37次方到10的38次方;
雙精度占用8字節內存空間,表示范圍是10的負307次方到10的308次方;
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
1 回答求大神解答,概念解析
1 回答概念理解問題
2 回答求大神解答16位、32位的概念
1 回答概念已混淆,,
1 回答參數的概念
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-10-09
單精度用float定義,雙精度用double定義。
ANSI標準僅規定了double至少要和float一樣長,同時規定所有的浮點類型至少能夠容納從-10^37到10^37之間的任意值。
所以,不同的編譯器可能會有不同的情況。一般來說,float是是4個字節的,double是8個字節的。
float用4個字節32位二進制表示,單精度數大約有7位十進制有效數字,數值的表示范圍約為±(3.4×10^38…3.4×10^38);
double用8個字節64位二進制表示,雙精度數大約有16位十進制有效數字,數值的表示范圍約為±(1.7×10^308…1.7×10^308);
2017-10-09
單精度占用4字節內存空間,表示范圍是10的負37次方到10的38次方;
雙精度占用8字節內存空間,表示范圍是10的負307次方到10的308次方;