Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个值 = 2.05 的浮点数,当我执行 field*1000 时,结果是 2049.999952316284 为什么结果不是 2050.0?.
谢谢
大概是因为该字段不是存储为 2.05 而是存储为 2.04999。如果增加字段的分辨率,即存储为 2.0500,会发生什么情况?
这个问题是由于计算机无法准确存储一些实数。
顺便说一句,如果该值应该是货币值,请将其存储为数字 (12,2),这样就不会出现任何浮点错误。