[Índice][Previo] [Siguiente]

Formatos

Para formatear la salida se utilizan manipuladores. Ya hemos visto algunos de ellos:

decutiliza base decimal
octutiliza base octal
hexutiliza base hexadecimal
También hemos visto los códigos de control que se pueden utilizar para producir saltos de línea, tabuladores ...
Otros manipuladores son:

setw(w) fija la anchura a w (por defecto, w=0)
setprecision(p) fija la precisión a p
setfill(c) utiliza c como 'carácter de relleno'
setiosflags fija flags de control

Al utilizar setw y setprecision con cout afectan al formato de la siguiente variable insertada en cout. Para utilizar estos manipuladores, debe incluirse, además de iostream.h , el fichero iomanip.h .Veamos un ejemplo:

#include <iostream.h>
#include <iomanip.h>

main{
cout << setw(6) << setfill('*') << 345 << endl;
cout << setprecision(3) << 3.14159 << endl;
}
que al ejecutarlo produce la siguiente salida por pantalla:

***345
3.14

El manipulador setiosflags toma varios flags, por ejemplo:

Flags Acción
ios::showpoint muestra siempre el punto decimal
ios::uppercase utiliza E para la notación científica, en lugar de e
ios::fixed escribe en formato fijo

Veamos un ejemplo:

#include <iostream.h>

#include <iomanip.h>

main (){
double a = 3.14159;
double b = 1/a;
double c = 10 * a;

cout << setiosflags(ios::showpoint | ios::uppercase);

//Escribe en formato G15.8
cout << setw(15) << setprecision(8) << a;
cout << setw(15) << setprecision(8) << b;

// Escribe en formato F10.3
cout << setiosflags(ios::fixed);
cout << setw(10) << setprecision(3) << c;
}

produce la salida:

3.1415900     0.31831016    31.416

[Índice][Previo] [Siguiente]

Free Web Hosting