float是單精度類型,精度是8位有效數字,取值范圍是10的-38次方到10的38次方,float占用4個字節的存儲空間
double是雙精度類型,精度是17位有效數字,取值范圍是10的-308次方到10的308次方,double占用8個字節的存儲空間
當你不聲明的時候,默認小數都用double來表示,所以如果要用float的話,則應該在其后加上f
例如:float a=1.3;
則會提示不能將double轉化成float 這成為窄型轉化
如果要用float來修飾的話,則應該使用float a=1.3f
注意float是8位有效數字,第7位數字將會產生四舍五入
所以如果一個float變量 這樣定義: float a=1.32344435; 則第7位將產生四舍五入(5及5以下的都將舍去)
1.兩個在定義時的區別
1)float型 內存分配4個字節,占32位,范圍從10^-38到10^38 和 -10^38到-10^-38
例float x=123.456f,y=2e20f; 注意float型定義的數據末尾必須有"f"或"F",為了和double區別
(2)double型 內存分配8個字節,范圍從10^-308到10^308 和 -10^-308到-10^-308
例double x=1234567.98,y=8980.09d; 末尾可以有"d"也可以不寫