将浮点异常转换为 C++ 异常

2024-02-28

是否可以在 x86 Linux 上将浮点异常(信号)转换为 C++ 异常?

这是出于调试目的,因此不可移植性和不完善性是可以的(例如,如果不能 100% 保证调用所有析构函数)。


如果您的 C++ 标准库实现支持 TR1 函数fetestexcept, feraiseexcept and feclearexcept(我的还没有,所以我无法测试这一点)您可以检测五种浮点错误,然后您可以抛出任何您想要的异常。

See here http://en.cppreference.com/w/cpp/numeric/fenv有关这些功能的说明。

我还推荐本书的第 12.3 节“管理浮点环境”C++ 标准库扩展:教程和参考作者:Pete Becker,ISBN-13:9780321412997,通过示例代码对这些函数进行了精彩的描述。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将浮点异常转换为 C++ 异常 的相关文章

随机推荐

  • pyder 中的 Python 调试器在第 2 行停止

    当我尝试调试代码时 调试器在第 2 行停止并且不响应任何命令 例如转到下一行 我正在使用 python 3 9 7 This is what the console looks like If I try to stop the debug
  • 无法加载共享库“libgdiplus” - Docker [带有 Aspose API 的 .NET 应用程序]

    当我创建用于部署的 docker 文件时 应用程序通常在开发环境中工作 但它失败了libgdiplus issue Docker文件 FROM mcr microsoft com dotnet core aspnet 3 0 AS base
  • 具有并排输入字段的 HTML 表单

    我有一个基本上是垂直的 html 表单 但我真的不知道如何在同一行上创建两个文本字段 例如 下面的表格我希望名字和姓氏在同一行 而不是一个在另一个下面
  • 将 UIButton 锚定到 UITableViewController 视图的底部

    我有以下要求 当一个UITableViewController显示的视图中 行数是可变的 在行下方 应显示一个按钮 当行数较小时 按钮应固定在视图的底部 当行数较多时 删除按钮应紧接在最后一行之后放置 换句话说 And not 到目前为止
  • CSS,位置:绝对,滚动条

    假设有一个页面 div div LEFT div div RIGHT div div 为什么水平滚动条只考虑右溢出 换句话说 为什么 LEFT 不触发滚动条 而 RIGHT 却触发呢 除了body gt overflow hidden 对于
  • 获得平均系数和 adj。使用 lapply 来自多个合并回归的 R^2

    我使用循环函数执行了多个池回归 并将回归输出存储在列表中 myregression 我现在想做的是对我的所有回归 即 myregression 列表 有效地执行 lmtest 包中的 coeftest 函数 以调整标准误差和 t 统计量 最
  • Python 中的梯形波

    如何用Python生成梯形波 我研究了 SciPy 和 NumPy 等模块 但没有成功 是否有像 scipy signal gaussian 这样的模块返回代表高斯函数波的值数组 我使用梯形内核生成了这个Astropy https en w
  • 加载图像时 WPF 抛出“无法定位资源”异常

    我有一个 WPF 窗口 其中包含本地系统中一个文件的背景图像 所以 XAML 文件看起来像这样
  • 增量熵计算

    Let std vector
  • 在迭代期间更改 HashMap 键

    是否可以在迭代过程中更改同一个 HashMap 实例的键 因为地图条目集没有方法entry setKey 现在我能想到的是创建另一个 HashMap MultipartParsingResult parsingResult parseReq
  • 如何在 D3 Javascript 中单击节点时显示和隐藏链接和节点

    我正在尝试遵循此 D3 Javascript 链接 gt http bl ocks org mbostock 1093130 http bl ocks org mbostock 1093130了解点击事件的工作原理 我想做的是 当单击蓝色节
  • 如何将所有项目模板数据设置到 Xamarin Carousel 中的单个视图中

    我尝试将 itemtemplate 中的所有项目制作为单个视图 如下图所示 如何使用 Xamarin CarouselView 实现此目的 我正在使用这样的 carousel new CarouselView carousel Bindin
  • 如何只在部分网站上实现HTTPS?

    我想知道 如何在网站的某一部分实现HTTPS 比方说 我想创建网上商店 我希望能够在没有 HTTPS 的情况下浏览所有项目 这样更快 对吧 当我想要付款时 我想使用 HTTPS 正如我在其他文章中读到的那样 当 IIS 配置为使用 HTTP
  • java中'Float a = 3f'和'Float a = 3.0'有什么区别?

    如果我表演 97346822 3f result is 2 9204048E8 however 97346822 3 0 gives me 2 92040466E8 请解释 号码3 0 is the 字面表示 http docs oracl
  • gcc 在链接时忽略符号名称的大小写

    我正在开发的一个软件使用全小写符号名称将 NETLIB BLAS LAPACK 嵌入到其源代码中 但现在将应用程序移植到 Windows 时我发现 Intel MKL 和该平台的其他几个 BLAS LAPACK 实现使用全大写符号名称 有没
  • 为什么需要绑定 `T: 'a` 来存储引用 `&'a T`?

    鉴于此代码 struct RefWrapper lt a T gt r a T 编译器抱怨 错误 参数类型T可能活得不够长 考虑添加显式生命周期界限T a这样引用类型 a T不会比它所指向的数据更长久 我已经多次看到这个错误 到目前为止我只
  • 清除 Android 浏览器历史记录

    我正在为客户编写一个应用程序 该应用程序将有多个可供客户查看和使用的设备 他们希望能够定期清除浏览器历史记录 这样 如果客户打开浏览器访问不适当的网站 下一个客户就不会看到此内容 我目前正在使用它来清除历史记录和搜索 Browser cle
  • 面试问题:递归生成素数最快的方法是什么? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 您遇到的 C 语言常见的未定义/未指定行为有哪些? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 C 语言中未指定行为的一个示例是函数参数的求值顺序 它可能是从左到右或从右到左 你只是不知道 这会影响如何foo c c or foo
  • 将浮点异常转换为 C++ 异常

    是否可以在 x86 Linux 上将浮点异常 信号 转换为 C 异常 这是出于调试目的 因此不可移植性和不完善性是可以的 例如 如果不能 100 保证调用所有析构函数 如果您的 C 标准库实现支持 TR1 函数fetestexcept fe