浮点相等:何时以及为何
虽然通常不受欢迎,但在某些情况下浮点比较可以被认为是可接受的.
整体的精确表示数字
IEEE 754 是浮点运算的标准,保证一定范围内的整数(整数)以浮点格式精确表示。这意味着可以使用相等运算符 (==) 进行涉及整数(包括 0.0)的比较。
计算值的注意事项
但是,建议谨慎当使用计算得出的浮点值时。将整数分配给浮点变量是安全的,但对浮点数执行任何算术运算可能会引入舍入错误。因此,应避免计算值之间的相等比较。
常量文字
将变量与常量文字进行比较时,确保文字定义为用于保持双精度的双常量(例如 3.14L)准确性。
示例
在提供的代码片段中,静态 const BAR 被定义为 double。如果 d 也是双精度数,则假设 d 和 BAR 均表示浮点表示有效范围内的整数,则比较 d == BAR 将始终返回 true。
以上是什么时候浮点相等可以被接受?的详细内容。更多信息请关注PHP中文网其他相关文章!