Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Sự khác biệt giữa float và double trong C/C++


Như ta biết, trong C/C++ cần float và double để biểu diễn số thực (số có phần thập phân). Dựa trên độ chính xác của hai kiểu dữ liệu này, ta có thể phân biệt.

Đơn giản: double có độ chính xác gấp 2 lần float, nghĩa là double có độ chính xác kép so với float.

Về số chữ số chính xác: double có độ chính xác 64 bit (1 bit dấu, 11 bit số mũ, 52 bit trị số), tức 15 chữ số thập phân. Float có độ chính xác 32 bit (8 bit số mũ, 23 bit trị số), tức 7 chữ số thập phân.

Vì double chính xác hơn nên nó chiếm gấp đôi bộ nhớ so với float.

Phạm vi biểu diễn: float ±3.40282347E+38F (6-7 chữ số hiệu lực), double ±1.79769313486231570E+308 (15-16 chữ số hiệu lực).

Dựa trên các điểm trên: nếu không cần độ chính xác cao và cần lưu mảng lớn số thực, float tiết kiệm bộ nhớ; khi cần độ chính xác cao, dùng double.