函数一直返回NaN

时间:2011-11-18 21:15:29

标签: c++ math nan

大家好我知道NaN(让我说我知道缩写代表Not a Number)但是我不明白为什么C ++会返回它 - 以下是数学常数e的近似值 - 使用调试器时函数评估很好,在写入控制台时返回NaN

感谢您的反馈

double Factorial(int k)
{
    if(k == 0)
        return 1;

    int value = 1;
    for(int i = k; i > 0; i--)
        value *= k;
    return value;
}

double e(int p)
{
    double value = 0.0;

    for(int i = 0; i < p; i++)
    {
        value += 1/Factorial(i);
    }
}

2 个答案:

答案 0 :(得分:10)

您不在e函数中返回值。

答案 1 :(得分:1)

你忘了在e结束时返回值。我不知道c ++什么时候停止了关于丢失返回的警告。