Bạn có thể biết điều này, nhưng bạn có thể thực hiện các cú đánh nổi / dài gấp đôi theo nghĩa đen
float f = 4.0f;
long double f = 4.0l;
Double là mặc định vì đó là thứ mà hầu hết mọi người sử dụng. Những cú đánh đôi dài có thể quá mức cần thiết hoặc và những cú đánh nổi có độ chính xác rất kém. Double hoạt động cho hầu hết mọi ứng dụng.
Tại sao lại đặt tên? Một ngày tất cả những gì chúng tôi có là 32 bit số dấu phẩy động (thực sự thì tất cả những gì chúng tôi có là số điểm cố định, nhưng tôi lạc đề). Dù sao, khi dấu chấm động trở thành một đặc điểm phổ biến trong các kiến trúc hiện đại, C có lẽ là từ dujour của ngôn ngữ khi đó, và cái tên "float" đã được đặt cho. Có vẻ có ý nghĩa.
Vào thời điểm đó, double có thể đã được nghĩ đến, nhưng không thực sự được triển khai trong cpu / fp của cpu thời đó là 16 hoặc 32 bit. Một khi bộ đôi được sử dụng trong nhiều kiến trúc hơn, C có lẽ phải thêm nó vào. C cần một cái tên cho một thứ gì đó có kích thước gấp đôi một cái phao, do đó chúng ta có một cái tên gấp đôi. Sau đó, ai đó cần chính xác hơn nữa, chúng tôi nghĩ rằng anh ta bị điên. Chúng tôi đã thêm nó bằng mọi cách. Tên quadtuple (?) Quá mức cần thiết. Đôi dài là đủ tốt, và không ai gây ra nhiều tiếng ồn.
Một phần của sự nhầm lẫn là good-ole "int" dường như thay đổi theo thời gian. Nó từng là "int" có nghĩa là số nguyên 16 bit. Float, tuy nhiên, bị ràng buộc với IEEE std là số dấu phẩy động IEEE 32 bit. Vì lý do đó, C giữ float được định nghĩa là 32 bit và tạo thành double và long double để tham chiếu đến các tiêu chuẩn dài hơn.