问题标签 [floating-point-exceptions]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 浮点异常和太大的常量警告?
我不愿发布我的代码,因为这是为了学校作业,但基本上我需要遍历一个uint64_t
可能非常大的代码。
所以,我的值基本上可能是 10 个字符长。它最初是一个int
,并且代码部分有效(但没有完成创建它应该完成的输出),但后来我得到了错误"warning: integer constant is so large that it is unsigned"
。
然后我将其更改int
为uint64_t
(乘以 10),它会给我一个浮点异常。
没有代码的任何见解?
编辑:添加一点点代码......
^ 这给了我浮点异常。
不确定这是否足以提供帮助。
c++ - 为什么会出现浮点异常错误?
我是新手程序员,所以请与我打交道。我正在编写一个程序来分析数据。当我执行程序时,我收到一个“浮点异常”,我不知道为什么。这是错误源自的代码部分。据我所知,该if
声明似乎是问题所在,但我不明白为什么。非常感谢您提供的任何帮助!
c - 在嵌入式代码中处理浮点异常的最佳方法是什么?
我正在开发一个安全关键的嵌入式程序(在 C 中),我想在其中使用 IEEE 754 浮点算法(带有 NaN 和 Infs)进行工程计算。在这里,我有两种方法(afaik)来处理浮点异常:
- 如果发生任何异常,则进入永久故障状态。从错误检测的角度来看,这可能更健壮,但对容错/可用性不利。
忽略异常,并检查最终结果是有限数(成功计算)还是 NaN、inf(计算失败)。此解决方案具有更高的容错性,但风险更大,因为输出可能会意外地从检查中排除。
- 在安全关键系统中哪个是更好的解决方案?
- 还有其他选择吗?
- 如果计算的复杂性不允许第一个解决方案(我无法避免正常使用中的异常),最后的检查是否足够,还是我应该考虑其他方面?
c - 这其中的哪一部分会导致浮点异常?
如果人们可以查看这段代码并让我知道可能导致浮点异常的原因,我将不胜感激。
信息:
- 分支是一个大小为 200 的 int 数组
- line 是一个 char 数组,大小为 20
- 循环运行良好 6 次,然后发生异常。
我很困惑,因为没有除法、浮点数或整数可能导致这种情况。
flash - Flash ActiveX 控件在 x64 中引发浮点异常
我有一个使用 Flash 播放器主动 x 控件的 MFC 对话。我在 x86 程序中没有问题,但是当为 x64 构建时,我开始在对话的消息循环中抛出浮点异常。我可以处理其中的第一个,但不是全部。
控件的创建在 OnInitDialog() 中完成
异常在最后一个循环中抛出。
重置异常标志或使用 SEH 处理程序不起作用
cal栈如下
mshtml.dll!CLayout::GetElementLayoutTransform()
mshtml.dll!CLayout::CalcSize()
mshtml.dll!CLayout::CalcTopLayoutSize()
mshtml.dll!CView::EnsureSize()
mshtml.dll!CView::EnsureView()
mshtml.dll!CDoc::RunningToInPlace()
mshtml.dll!CServer::Show()
ieframe.dll!CDocObjectHost::_ShowMsoView()
ieframe.dll!CDocObjectHost::ActivateMe()
mshtml.dll!CServer::ActivateView()
mshtml.dll!CServer::DoUIActivate()
mshtml.dll!CServer::DoVerb()
mshtml.dll!CMarkup::Navigate()
ieframe.dll!CDocObjectHost::_ActivateMsoView()
ieframe.dll!CDocObjectHost::UIActivate()
ieframe.dll!CDocObjectView::UIActivate()
ieframe.dll!CBaseBrowser2::_UIActivateView()
ieframe.dll!CBaseBrowser2::v_ActivatePendingView()
ieframe.dll!CWebBrowserSB::v_ActivatePendingView()
ieframe.dll!CBaseBrowser2::_ExecShellDocView()
ieframe.dll!CBaseBrowser2::Exec()
ieframe.dll!CWebBrowserSB::Exec()
ieframe.dll!CDocObjectHost::_OnReadyState()
ieframe.dll!CDocObjectHost::_OnChangedReadyState()
ieframe.dll!CDocObjectHost::OnChanged()
mshtml.dll!CBase::FirePropertyNotify()
mshtml.dll!CMarkup::SetReadyState()
mshtml.dll!CMarkup::SetInteractiveInternal()
mshtml.dll!CMarkup::RequestReadystateInteractive()
mshtml.dll!CMarkup::BlockScriptExecutionHelper()
mshtml.dll!CHtmPost::Exec()
user32.dll!DefWindowProcWorker()
c++ - 浮点异常问题
我尝试过调试器和 Catch and throw,尽管我承认我对这两个都不满意。但我无法在我的程序中找到浮点异常的原因。奇怪的是它对于数字 <= 35 运行完美。除此之外,它引发了异常。问题出在哪里?
非常感谢。
c++ - 神秘的浮点异常
我和我的朋友正在搞砸,试图想出我们能想到的最糟糕的 for 循环(所以不要告诉我这是糟糕的代码,因为它应该是!)。
我的朋友想出了这个 for 循环:
它看起来不错,但由于浮点异常,即使是第一次也无法进入。所以我的第一个想法是模数除以 0。但它似乎没有,因为如果你这样做,它运行良好:
但这不会:
但它变得陌生。第一种情况运行良好,第二种情况不会:
所以现在我真的对发生的事情感到困惑,但它又变得更奇怪了。如果您将情况与? 0 : 1
(运行良好)放入 if 语句中,它会再次引发浮点异常:
我完全迷失了这一点。有人知道这里发生了什么吗?
vhdl - ghdl 浮点异常 8
我正在尝试编写具有 32 位地址的 SRAM,并启用字节通道写入。但是,当我尝试访问(读取或写入)大于 x1F 的地址时,在使用 GHDL 编译时出现“浮点异常 8”。以下是一些代码片段:
因此,当我在测试台中将地址设置为 x0000_001F 或更低时,它会编译,但当我输入 x0000_0020 或更高时则不会。
floating-point-exceptions - MCH1206 浮点溢出情况
IBM OS400 C ILE 程序
有谁知道 MCH1206 何时在 C 程序中发布?C 程序没有定义任何错误处理。
在我的环境中,每当发生溢出时, - 例如 result = pow(a,b)
如果发生溢出,则将结果设置为 HUGE_VAL,并继续执行。在作业日志中,我可以看到此消息:
“CEESDXPD 中发生浮点溢出异常。”
但是,在另一个环境中,它会停止执行并发出此消息
“检测到浮点溢出条件。应用程序错误。MCH1206 在语句 00000038 处不受 F07RTB 监控”
是否有全局处理(例如在系统级别定义)?数学库的全局处理?
谢谢
c - 如何引发浮点异常
伙计们。我正在围绕浮点运算做一些工作。0.1 不精确地用二进制浮点格式表示。于是我写下了这个
并期望出现不确切的异常。我打开了 -fp-trap-all=all 选项,将 fp-mode 设置为严格并在我的代码中安装了 SIGFPE 信号处理程序。但是什么也没发生。然后我尝试了
仍然无法捕获任何异常!它让我发疯。
很抱歉,我终于在 Linux 上使用了 intel c++ 编译器。