小编Kir*_* K.的帖子

c ++ cout << [double]不打印小数位

我有一个简单的C++程序,我认为会打印出f和g中定义的double值作为double ...但是C++将它们打印为整数.我检查了cout的默认精度,当我运行它时,输出显示默认精度应为6,所以我很困惑为什么双打不正确.

#include <iostream>
#include <stdio.h>
int main() {

    double f = 735416.416898;
    double g = f + 0.3;

    std::cout << "default precision is " << std::cout.precision() << std::endl;

    std::cout << "[c++] f = " << f << std::endl;
    std::cout << "[c++] g = " << g << std::endl;
    printf("[c] f = %f\n", f);
    printf("[c] g = %f\n", g);

    f = 735416.516898;
    g = f + 0.3;

    std::cout << "[c++] f = " << f << std::endl;
    std::cout << "[c++] …
Run Code Online (Sandbox Code Playgroud)

c++

14
推荐指数
1
解决办法
1万
查看次数

标签 统计

c++ ×1