Como usar o setprecision em C++

sou novo em C++, só quero mostrar o meu número de ponto até 2 dígitos. assim como se o número é 3.444, então o resultado deve ser 3.44 ou se o número é 99999.4234 Então o resultado deve ser 99999.42, Como posso fazer isso. o valor é dinâmico. Aqui está o meu código.

#include <iomanip.h>
#include <iomanip>
int main()
{
    double num1 = 3.12345678;
    cout << fixed << showpoint;
    cout << setprecision(2);
    cout << num1 << endl;
}
Mas está a dar-me um erro, um símbolo fixo indefinido.

 12
c++
Author: suspectus, 2014-03-19

4 answers

#include <iomanip>
#include <iostream>

int main()
{
    double num1 = 3.12345678;
    std::cout << std::fixed << std::showpoint;
    std::cout << std::setprecision(2);
    std::cout << num1 << std::endl;
    return 0;
}
 20
Author: piokuc, 2016-02-19 14:10:05
#include <iostream>
#include <iomanip>
using namespace std;

Você pode entrar na linha {[[2]} para sua conveniência. Caso contrário, você terá que adicionar explicitamente std:: cada vez que você deseja usar cout, fixed, showpoint, setprecision(2) e endl

int main()
{
    double num1 = 3.12345678;
    cout << fixed << showpoint;
    cout << setprecision(2);
    cout << num1 << endl;
return 0;
}
 4
Author: Loyce, 2018-07-19 06:48:52
A resposta acima está absolutamente correcta. Aqui está uma versão Turbo C++ dele.
#include <iomanip.h>
#include <iostream.h>

void main()
{
    double num1 = 3.12345678;
    cout << setiosflags(fixed) << setiosflags(showpoint);
    cout << setprecision(2);
    cout << num1 << endl;
}

Para fixed e showpoint, penso que a função setiosflags deve ser usada.

 2
Author: aliasm2k, 2016-01-30 02:53:51

Substitua Estes Cabeçalhos

#include <iomanip.h>
#include <iomanip>
Com Isto.
#include <iostream>
#include <iomanip>
using namespace std;
É isso...!!!
 2
Author: Ashraful, 2016-11-15 13:54:08