首页 > 解决方案 > C++ 双精度

问题描述

int main() {
        const double PI = 3.1415926536;
        cout << PI << endl;
        return 0;
}

为什么我的输出是 3.14159 ?似乎输出被视为浮点数..?我希望所有小数的值都保持不变。

标签: c++double

解决方案


您的输出被 std::cout 截断。要修复它,请执行以下操作:

#include <iostream>
#include <iomanip>

using namespace std;

int main(){
    const double PI = 3.1415926536;
    cout.precision(10);
    cout << PI << endl;
    return 0;
}

推荐阅读