操作返回0时是否可以获得异常。#INF

时间:2011-01-28 14:55:14

标签: c++ visual-studio-2008 exception

如果操作返回0,MS VS2008中是否有任何设置产生异常。#INF?使用常规调试对我没有帮助,因为我无法弄清楚它出现在哪里。

2 个答案:

答案 0 :(得分:2)

您可以使用_control87启用除零异常。像这样:

#include "stdafx.h"
#include <float.h>


int _tmain(int argc, _TCHAR* argv[])
{
#ifdef _DEBUG
    _control87( ~_EM_ZERODIVIDE, _MCW_EM );
#endif
    double value = 1;
    value /= 0;   // kaboom
    return 0;
}

仅使用 来诊断错误。更改FPU控制字对于期望FPU具有其默认初始化的库非常不稳定。

答案 1 :(得分:0)

应用属性的 C / C ++ - &gt;代码生成中有启用浮点例外