Espacios de nombres
Variantes
Acciones

std::ios_base::precision

De cppreference.com
< cpp‎ | io‎ | ios base
 
 
Biblioteca de E/S
Manipuladores de E/S
E/S estilo C
Búferes
(en desuso en C++98)
Flujos
Abstracciones
E/S de archivos
E/S de cadenas
E/S de arrays
(en desuso en C++98)
(en desuso en C++98)
(en desuso en C++98)
Salida sincronizada
Tipos
Interfaz de categoría de error
(C++11)
 
 
streamsize precision() const;
(1)
streamsize precision( streamsize new_precision );
(2)

Gestiona la precisión (es decir, cuántos dígitos se generan) de salida de punto flotante realizada por std::num_put::do_put.

1) Devuelve la precisión actual.
2) Establece la precisión a la dada. Devuelve la precisión anterior.

La precisión por defecto, establecida por std::basic_ios::init, es 6.

Contenido

[editar] Parámetros

new_precision - El nuevo valor de precisión.

[editar] Valor de retorno

La precisión antes de la llamada a la función.

[editar] Ejemplo

#include <iostream>
int main()
{
    const double d = 1.2345678901234;
    std::cout << "La precisión por defecto es " << std::cout.precision() << "\n\n";
    std::cout << "Con la precisión por defecto d es " << d << '\n';
    std::cout.precision(12);
    std::cout << "Con alta precisión d es " << d << '\n';
}

Salida:

La precisión por defecto es 6
 
Con la precisión por defecto d es 1.23457
Con alta precisión d es 1.23456789012

[editar] Informes de defectos

Los siguientes informes de defectos de cambio de comportamiento se aplicaron de manera retroactiva a los estándares de C++ publicados anteriormente.

ID Aplicado a Comportamiento según lo publicado Comportamiento correcto
LWG 189 C++98 'precisión' de definía como 'el número de dígitos después
del punto decimal', pero en algunos casos no es correcto.
Se corrigió.

[editar] Véase también

Gestiona la anchura de campo.
(función miembro pública) [editar]
Cambia la precisión de punto flotante.
(función) [editar]