Abh*_*agi 14 c++ floating-point literals auto type-deduction
在下面的代码片段中,auto将变量推导出为double,但是我想要float。
auto one = 3.5;
Run Code Online (Sandbox Code Playgroud)
它是否始终double用于带小数点的文字?如何确定浮点数和两倍数?
在C ++(和C)中,double除非使用,否则默认情况下会将浮动文字视为默认值f or F or l or L。
该标准具有以下特点:
2.14.4除非后缀明确指定,否则浮动文字的类型为double。后缀f和F指定浮点数,后缀l和L指定长整数。如果缩放后的值不在其类型的可表示值范围内,则程序格式错误。
因此,
auto one = 3.5;
Run Code Online (Sandbox Code Playgroud)
始终存在double,如果您打算float
将其编码为
auto one = 3.5f;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
872 次 |
| 最近记录: |