2 回答

揚帆大魚
TA貢獻1799條經驗 獲得超9個贊
double是一種數據類型,用來聲明一個變量的類型。
比方說你寫了一個字,為了告訴別人它是什么東西,它是一個漢字,你可以用“ 漢字 字;”這種格式來告訴別人那個字是個漢字。
同樣道理,C++中你想建立一個變量的時候,需要告訴編譯器變量的數據類型,以便編譯器給變量分配存儲空間。
格式:int i; 這是整型變量的聲明格式。
如果要聲明雙精度型變量,也就是小數,相同道理
double i;
這樣編譯器就知道i是一個雙精度小數變量。
另外 float也表示小數,是單精度小數。float和double的區別在于,float所允許的小數范圍小,double允許的小數范圍大。
追問
Sorry?。?! 我想問一下,雙精度小數具體允許到小數點后幾位?既然雙精度允許范圍大,那是不是可以不用單精度的,它們各有什么優勢? 先謝啦?。。?/pre>追答
單雙精度小數不是按小數點后有幾位小數來區分的,而是按有效數字的不同。 float 有效數字7位,取值范圍從3.4E-38~3.4E+38。比方說a=1111.11111111,因為有效位數是7位,整數部分已占4位,則只有小數點后3位有效。 double 有效數字16位,取值范圍從1.7E-308~1.7E+308。例子和上面情況差不多,自己應該能看出來。 另外,單精度在內存中占4個字節的空間;而雙精度占8個字節,在精度要求不高的情況下,為了節省內存,采用float。
- 2 回答
- 0 關注
- 6028 瀏覽
添加回答
舉報
0/150
提交
取消