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