c – gcc(Linux / MinGW)是否存在编译器标志,以便在运行时将除法误差提高?

我有一个用C编写的复杂模型,其中分母有时恰好是零.

我通常会检查它们,但是当我忘记时,调试它们会很痛苦,因为模型会在没有警告的情况下继续进行.

是否有一个编译器标志,在Linux的最新版本的gcc和Windows上的MinGW中工作,我可以用来告诉gcc编译,以便在(在双打之间)除零时发生运行时错误?
这在计算上是否很昂贵(因此仅在调试版本中启用它)?

我知道一个类似的问题已经发布here,但答案更多的是技术和理论快速评论的混合,而不是一个发达的答案.

最佳答案 对于linux中的gcc,你可以使用fenv.h或者从c 11 cfenf开始,在windows上有 _controlfp

点赞