Fortran 90 GDB信号SIGFPE,算术异常

问题描述

我正在尝试使用GDB进行调试,并且在尝试比较两个值时遇到算术错误

一个值在模块顶部设置为双精度,参数,公共:: Dint = -1.D99

调用的子例程中的第二个值恰好是inta = 102。

比较在子例程中进行,就像(Inta / = int(Dint))那么

我已经尝试通过键入p Dint来查看Dint的值,但是它说它不在当前上下文中。我怀疑它可能已经过优化,或者可能需要某种语法才能在模块顶部看到变量。

我还怀疑尝试将这种双精度转换为整数可能会出现问题,但是我认为在其他情况下它仍然有效。

任何见解都可能会有所帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)