c# - 将 double 加在一起

标签 c# double

我有一个文本文件,其中包含两个代表货币金额的数字。 当我把它们读成 double 时,让我们说: 双 a = 73.7926 双 b = 1.1

并将它们加在一起得到的结果是:74.892599999999987 我希望有 74.8926

知道这是为什么吗?我需要做什么才能在不四舍五入的情况下获得预期结果?

最佳答案

对于该特定任务,您可以使用 decimal输入而不是双。

decimal a = 73.7926M; 
decimal b = 1.1M;
decimal d = a + b;

您应该看到:Tutorial to Understand IEEE Floating-Point Errors

关于c# - 将 double 加在一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13008458/

相关文章:

c# - 特定行的 LinqToExcel GetColumnNames

c# - 使用 'do nothing' 默认事件处理程序是否存在任何性能缺陷?

objective-c - 将小数点限制在需要的范围内

opencv:执行在图像像素访问的双指针算法处停止

Objective-C:将整个 double 值转换为字符串而不丢失数据

java - java.lang.Double 的缓存

c# - 在 NHibernate 中执行 Oracle PL/SQL 存储过程

c# - 使用 .NET 的 Web 自动化

c# uwp 模糊屏幕的一部分

swift - 如何确定 double 是否为整数?