Formateo de la salida con iomanip
Controle el ancho, la precisión, la alineación y las bases numéricas mediante la cabecera iomanip.
Formateo de la salida con iomanip es una lección gratuita de C++ Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de C++ Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de C++ Academy incluye 4 lecciones en total.
La cabecera iomanip
La cabecera <iomanip> proporciona manipuladores: objetos especiales que se envían a cout para cambiar su estado de formateo.
std::setw: ancho de campo
std::setw(n) establece el ancho mínimo solo para el siguiente campo. Los valores más cortos se rellenan.
#include <iomanip>
std::cout << std::setw(10) << "Name" << std::setw(5) << "Age\n";
std::cout << std::setw(10) << "Ada" << std::setw(5) << 36 << "\n";std::setfill: carácter de relleno
De forma predeterminada, setw rellena con espacios. Cambie el carácter de relleno con setfill; esta configuración permanece activa.
std::cout << std::setfill('0') << std::setw(4) << 42;
// 0042std::left y std::right
Alinee el texto dentro de un campo setw. De forma predeterminada, la alineación es a la derecha.
std::cout << std::left << std::setw(10) << "Ada" << "|\n";
std::cout << std::right << std::setw(10) << "Ada" << "|\n";std::setprecision
Controle el número de dígitos significativos o, junto con std::fixed, el número de posiciones decimales.
double pi = 3.14159265;
std::cout << std::setprecision(4) << pi << "\n"; // 3.142
std::cout << std::fixed << std::setprecision(2) << pi; // 3.14Fixed, Scientific y Hexfloat
Cambie entre formatos numéricos con std::fixed, std::scientific y std::hexfloat.
double x = 12345.6789;
std::cout << std::scientific << x << "\n"; // 1.234568e+04
std::cout << std::fixed << x << "\n"; // 12345.678900Bases para enteros: hex oct dec
Imprima enteros en distintas bases. std::showbase añade el prefijo (0x, 0).
int n = 255;
std::cout << std::hex << n << "\n"; // ff
std::cout << std::oct << n << "\n"; // 377
std::cout << std::dec << n << "\n"; // 255 (default)std::boolalpha
Imprima los valores booleanos como palabras en lugar de 1/0.
std::cout << std::boolalpha << true << "\n"; // true
std::cout << std::noboolalpha << true << "\n"; // 1Los manipuladores permanecen activos
La mayoría de los manipuladores siguen teniendo efecto hasta que se modifican. setw es una excepción: solo se aplica al siguiente campo.
std::quoted para cadenas seguras
std::quoted, de <iomanip>, rodea una cadena con comillas dobles y escapa las comillas incluidas. Es perfecto para las líneas de registro.
std::string name = "Ada \"Countess\"";
std::cout << std::quoted(name);
// "Ada \"Countess\""C++20 std::format
El C++20 moderno sustituye la mayor parte del uso de iomanip por std::format, una API de estilo printf con seguridad de tipos.
#include <format>
std::cout << std::format("{:>10} | {:.2f}\n", "pi", 3.14159);Comprobación rápida
¿Qué manipulador debe volver a aplicarse para cada campo de salida?
Resumen
<iomanip> ofrece manipuladores para el ancho, la precisión, la alineación, la base y las comillas. setw se aplica a cada campo; los demás permanecen activos. En C++20, prefiera std::format para obtener un formateo más claro.
Aprende C++ con un tutor de IA — gratis
Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.
- Cursos
- 51
- Lecciones
- 203
Preguntas frecuentes
¿La lección «Formateo de la salida con iomanip» es gratis?
Sí — el texto completo de «Formateo de la salida con iomanip» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de C++ Academy, actualiza a CoddyKit PRO. El curso de C++ Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Formateo de la salida con iomanip»?
Controle el ancho, la precisión, la alineación y las bases numéricas mediante la cabecera iomanip. Practicas C++ Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar C++ Academy?
No se requiere experiencia previa. C++ Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Formateo de la salida con iomanip»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de C++ Academy?
Sí. Cada lección de C++ Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Uso adecuado de std::cin y std::cout
- Formateo de la salida con iomanip
- Lectura segura de la entrada con getline
- Trabajo con std::cerr y std::clog