【发布时间】:2013-09-17 09:00:57
【问题描述】:
我试图找到在 C/C++ 中使用数字 e 的更“自然”的方式。我专注于计算函数 e^n.
我认为'cmath' 默认情况下不支持(函数和常量)。但是,可以启用它以包含编译器定义的常量,在本例中为M_E。这可以通过包含声明 #define _USE_MATH_DEFINES 来完成。
另一方面,e 可以定义为常量:
#define E 2.71828182845904523536;
或
const double EULER = 2.71828182845904523536;
这样说。哪种方法是接近这个数学常数的最“标准”方法?是其他图书馆吗?
【问题讨论】:
-
在计算 e^n 时,
n是整数、实数还是复数?只有当它是一个整数时,std::pow(Euler,n)才可能比简单的std::exp(n)更有效。
标签: c++ eulers-number