混淆了double和float数据类型

Confused between double and float data types

本文关键字:float 数据类型 double      更新时间:2023-10-16

我混淆了C++中的doublefloat。例如:

Q。对于每种类型的状态,其常数:

a.)1.0
b.)2.8e-10

根据我的说法,a.)部分是float(因为它不太精确),b.)double。或者两者都是double

我认为精度是两者之间的主要区别:

浮点-7位(32位)

双-15-16位(64位)

你的答案可能取决于你使用的语言,因为精度因素是一个关键因素。但我想说的是,你可以同意两者都是双重。此外,1.0也可以是浮动的,所以在不知道您的需求或语言的情况下,很难回答这个问题。

如果没有任何后缀,C++中的所有浮点文字都是double。如果附加了f后缀,则文字为float;如果使用L后缀编写,则文字将为long double。文字常数通常不取决于它们的大小。像1或2这样的整数文字的类型是int,尽管它们的值完全位于字符的范围内

除非由后缀明确指定,否则浮动文字的类型为double。后缀fF指定float,后缀lL指定long double

ISO C++2013 草案

您可能会认为它们都是双的,最后都是关于大小的1.0的大小很小,所以您也可以将其视为浮动。