เรารู้ว่าใน C/C++ ต้องใช้ float และ double สำหรับ floating point numbers ตอนนี้จาก precision ที่ให้มา เราสามารถแยกความแตกต่างได้
อย่างง่าย double มี precision 2 เท่าของ float หมายถึง double precision มากกว่า float 2 เท่า
ในแง่จำนวน precision: double มี 64-bit precision (1 bit sign, 11 bits exponent, 52* bits value) คือ 15 decimal digits precision float มี 32-bit precision (8 bits exponent, 23* bits value) คือ 7 decimal digits precision
เนื่องจาก double มี precision มากกว่า จึงชัดเจนว่าใช้ memory มากกว่า float 2 เท่า
Range: float ±3.40282347E+38F (6-7 significant digits) double ±1.79769313486231570E+308 (15-16 significant digits)
จากข้างต้น: ถ้าไม่ต้อง precision สูง และต้องการเก็บ decimal numbers มาก float ประหยัด memory ถ้าต้องการ precision สูง ใช้ double