回 帖 发 新 帖 刷新版面

主题:IEEE_UNDERFLOW_FLAG IEEE_DENORMAL

最近4笔记本换成了64位的

原本在32位的机子上运行的好好的程序,在64位上时不时的出现如下的警告:

Note: The following floating-point exceptions are signalling: IEEE_UNDERFLOW_FLAG IEEE_DENORMAL


请问我如何定位到程序出现警告的地方?

问题补充:

出现问题的地方找到了.

原来是 小数字相加,造成数据下线溢出.

           1  -1.5567151444438427E-007
           2  -2.8663987458411492E-007
           3  -3.0456422767591128E-007
           4  -2.9423525697741452E-007
           5  -4.4958077501982124E-007
           6  -3.3299162912983427E-007
           7  -1.6321521441091670E-007
           8  -1.7793253543615978E-007
           9  -3.4257452020890174E-007
          10  -3.5090218004327795E-007
          11  -3.8938845043805596E-007
          12  -5.1084381012653914E-007
          13                       NaN
          14                       NaN
          15                       NaN
          16                       NaN


但是我的数据都是这么小的亚,该如何设置我的程序亚,谢谢,不让underflow错误出现?

回复列表 (共3个回复)

沙发

NAN 意思是 not a number, 一般这个问题是代码遇到除数为0的情况。

板凳

楼主解决了吗?如何解决的?我也遇到把这个问题了


3 楼

一般的编译器都有选项,可以对下溢不报错。

我来回复

您尚未登录,请登录后再回复。点此登录或注册