c# - 是否有与 c++ fesetround() 函数等效的 C# 函数?

标签 c# c++ floating-point rounding

我正在编写一个用于区间算术的 C# 库,为此我需要 将浮点运算舍入模式设置为向上和向下。我知道在 C++ 中 它可以通过 fesetround() 函数来实现。 C# 中有等效的吗? 或者如果没有,我怎样才能以其他方式实现这一目标?

最佳答案

我遵循 Pascal Cuoq 的建议,创建了一个非常简单的单函数程序集。 如果其他人遇到过这样的问题,我会将其发布在这里。

使用我的库的解决方案:

  1. 从以下位置下载 dll 文件:https://www.dropbox.com/s/o3vfxe4rpefhly7/RoundModeUtil.dll
  2. 在您的项目中添加对库的引用。
  3. 包括使用 RoundModeUtils;项目代码中的行。
  4. 用法:

    static void RoundModeConfig::setround( int mode );
    
    // mode can be set to one of the following values: 
    static int RoundModeConfig::UPWARD
    static int RoundModeConfig::DOWNWARD
    static int RoundModeConfig::DEFAULT     // To nearest mode.
    static int RoundModeConfig::TOWARDZERO
    

感谢汉斯·帕桑特的建议,我应该记住它。 感谢大家的帮助,希望有人会发现我的 dll 有用:)

关于c# - 是否有与 c++ fesetround() 函数等效的 C# 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24241545/

相关文章:

C# sqlite 无法加载sqlite3.dll

c# - 如何检查 RavenDB 中是否存在表(实体)

c# - 使用 Decimal.TryParse 转换屏蔽货币字符串

c# - 通过 C# 服务引用使用 Java Web 服务

c++ - float 在 C++ 中四舍五入,我不明白为什么

c++ - 浮点字节顺序

c++ - 如何为静态模板方法起别名?

c++ - std::initializer_list 类型推导

c++ - 函数 atof() 将其结果四舍五入为整数部分

c# - 来自具有不同类型数据的字节数组的 MemoryStream