c++ - 像这样声明浮点常量有什么特别的理由吗? (C 和 C++)

标签 c++ c floating-point

<分区>

除了可读性或传统之外,是否有任何客观原因将小数部分为零的浮点常量声明为 1.0f而不是简单地 1.f

这可能只是基于意见,但我在网上看到的几乎所有代码都是这样的。它的目的是为了让以后添加小数部分更容易(值得怀疑,因为它涉及到更多的删除)还是仅仅是为了提高可读性?

如果 C 和 C++ 之间在这方面有区别,请包括这两种风格。

最佳答案

正如您所指出的,在 C 和 C++ 中,小数点后没有必要有数字,如果小数点后有数字,则确实没有必要。编写 1.0f1.f 并没有什么区别,只是风格问题。

其他语言在此语法选择上有所不同,以允许将小数点解析为成员取消引用运算符。

  • 例如,在 Ruby 中,1.f 将被解析为 1 . f 试图读取属性f 的数字 1

关于c++ - 像这样声明浮点常量有什么特别的理由吗? (C 和 C++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35687612/

相关文章:

无法理解 C 代码中的移位运算符行为

c# - 无法将 'double' 转换为 'float' 但我没有使用 double

c++ - FPU 命令 FLDL 将 ST0 中的 double 转换为 long double

C++ Conway 的生命游戏 - Cygwin 段错误(核心已转储)

c++ - C++的简单图形

c++ - 如何使用 Boost MSM 减少编译时间

c++ - 是定义函数?

c - *** 错误 : double free or corruption (out): 0x00007fffe3465010 ***. 警告 : Corrupted shared library list: 0x7ffea4000920 ! = 0x7ffff7ffd9d8

c - 在具有两个以太网端口的机器上接收 UDP 广播

math - 余弦加速曲线的潜在浮点问题