C++ Academy · Lección

Formateo de la salida con iomanip

Controle el ancho, la precisión, la alineación y las bases numéricas mediante la cabecera iomanip.

Lección 2 de 413 pasos

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;
// 0042

std::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.14

Fixed, 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.678900

Bases 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"; // 1

Los 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.

Gratis para empezar

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

  1. Uso adecuado de std::cin y std::cout
  2. Formateo de la salida con iomanip
  3. Lectura segura de la entrada con getline
  4. Trabajo con std::cerr y std::clog
← Volver a C++ Academy