- UID
- 2
- 积分
- 2874604
- 威望
- 1387331 布
- 龙e币
- 1487273 刀
- 在线时间
- 13155 小时
- 注册时间
- 2009-12-3
- 最后登录
- 2024-11-24
|
如何在 C++ 中使用 PI 常数
使用 GNU C 库中的 M_PI 宏
它使用 C 标准数学库中预定义的宏表达式。该库定义了多个常用的数学常量,如下表所示。M_PI 宏可以赋值给浮点变量,也可以在计算中作为文字值使用。注意,我们使用的是 setprecision 操纵器函数,它可以用来控制输出数的显示精度。
- #include <cmath>
- #include <iomanip>
- #include <iostream>
- using std::cout;
- using std::endl;
- int main() {
- double pi1 = M_PI;
- cout << "pi = " << std::setprecision(16) << M_PI << endl;
- cout << "pi * 2 = " << std::setprecision(16) << pi1 * 2 << endl;
- cout << "M_PI * 2 = " << std::setprecision(16) << M_PI * 2 << endl;
- cout << endl;
- return EXIT_SUCCESS;
- }
复制代码 输出:
pi = 3.141592653589793
pi * 2 = 6.283185307179586
M_PI * 2 = 6.283185307179586
从 C++20 开始使用 std::numbers::pi 常数
自 C++20 标准以来,该语言支持在 <numbers> 头文件中定义的数学常量。这些常量被认为可以提供更好的跨平台兼容性,但目前仍处于早期阶段,各种编译器可能还不支持它。完整的常量列表可以在这里看到。- #include <iomanip>
- #include <iostream>
- #include <numbers>
- using std::cout;
- using std::endl;
- int main() {
- cout << "pi = " << std::setprecision(16) << std::numbers::pi << endl;
- cout << "pi * 2 = " << std::setprecision(16) << std::numbers::pi * 2 << endl;
- cout << endl;
- return EXIT_SUCCESS;
- }
复制代码- pi = 3.141592653589793
- pi * 2 = 6.283185307179586
复制代码 |
论坛官方微信、群(期货热点、量化探讨、开户与绑定实盘)
|