首页 > 解决方案 > 将 exp 用于指数形式 (C++, 1.#INF)

问题描述

有没有办法在 c++ 的 exp 函数中使用指数形式?

我猜 1.00e+006 与 10^6 相同。

但是,如果我将 e 用于 exp 函数,则会给出错误的结果 1.#INF,如下所示。

cout << exp(1.00e+006) << endl; // result : 1.#INF
cout << exp(10^6) << endl; // result : 162755

实际上,在我的代码中,我使用了“双 A”变量,并且由于某种原因,它具有指数形式(如 e+006)。我必须将 A 更改为 exp(A)。有什么问题?

标签: c++

解决方案


  • exp(1e6)是 e 10 6
  • 10^6是 10 异或 6
  • 1e6是 1000000

推荐阅读