Espacios de nombres
Variantes
Acciones

std::ios_base::setf

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)
 
 
fmtflags setf( fmtflags flags );
(1)
fmtflags setf( fmtflags flags, fmtflags mask );
(2)

Establece los indicadores de formato en la configuración especificada.

1) Establece los indicadores de formato identificados por flags. Efectivamente se realiza la siguiente operación: fl = fl | flags, donde fl define el estado de los indicadores de formato interno.
2) Borra los indicadores de formato contenidos en mask y establece los indicadores borrados en los especificados por flags. Efectivamente se realiza la siguiente operación: fl = (fl & ~mask) | (flags & mask), donde fl define el estado de los indicadores de formato internos.

Contenido

[editar] Parámetros

flags, mask - El nuevo valor de formato. mask define cuáles indicadores se pueden alterar, flags define cuáles indicadores de los que se pueden alterar deben establecerse a un valor (los otros se borrarán). Ambos parámetros pueden ser una combinación de las constantes de indicadores de formato.
[editar] Indicadores de formato
Constante Explicación
dec Usar base decimal para E/S de enteros. Véase std::dec.
oct Usar base octal para E/S de enteros. Véase std::oct.
hex Usar base hexadecimal para E/S de enteros. Véase std::hex.
basefield dec|oct|hex. Útil para operaciones de enmascaramiento.
left Ajuste a la izquierda (agrega caracteres de relleno a la derecha). Véase std::left.
right Ajuste a la derecha (agrega caracteres de relleno a la izquierda). Véase std::right.
internal Ajuste interno (agrega caracteres de relleno al punto interno designado). Véase std::internal.
adjustfield left|right|internal. Útil para operaciones de enmascaramiento.
scientific Generar tipos de punto flotante usando notación científica, o notación hexadecimal si se combina con fixed. Véase std::scientific.
fixed Generar tipos de punto flotante usando notación fija o notación hexadecimal si se combina con scientific. Véase std::fixed.
floatfield scientific|fixed. Útil para operaciones de enmascaramiento.
boolalpha Insertar y extraer el tipo bool en formato alfanumérico. Véase std::boolalpha.
showbase Generar un prefijo indicando la base numérica para salida de enteros. Requiere el indicador de moneda en E/S monetaria. Véase std::showbase.
showpoint Generar un carácter de punto decimal incondicionalmente para salida de números de punto flotante. Véase std::showpoint.
showpos Generar un carácter + para salida numérica no negativa. Véase std::showpos.
skipws Omitir los espacios en blanco iniciales antes de ciertas operaciones de entrada. Véase std::skipws.
unitbuf Descargar la salida después de cada operación de salida. Véase std::unitbuf.
uppercase Reemplazar ciertas letras minúsculas con sus equivalentes en mayúsculas
en ciertas operaciones de salida. Véase std::uppercase.

[editar] Valor de retorno

Los indicadores de formato antes de llamar a la función.

[editar] Ejemplo

#include <iomanip>
#include <iostream>
#include <numbers>
 
int main()
{
    const double PI = std::numbers::pi;
    const int ANCHURA = 15;
 
    std::cout.setf(std::ios::right); // equivalente a: cout << right;
    std::cout << std::setw(ANCHURA / 2) << "radio"
              << std::setw(ANCHURA) << "circunferencia" << '\n';
 
    std::cout.setf(std::ios::fixed); // equivalente a: cout << fixed;
    for (double radio = 1; radio <= 6; radio += 0.5)
    {
        std::cout << std::setprecision(1) << std::setw(ANCHURA / 2)
                  << radio
                  << std::setprecision(2) << std::setw(ANCHURA)
                  << (2 * PI * radio) << '\n';
    }
}

Salida:

 radio  circunferencia
    1.0           6.28
    1.5           9.42
    2.0          12.57
    2.5          15.71
    3.0          18.85
    3.5          21.99
    4.0          25.13
    4.5          28.27
    5.0          31.42
    5.5          34.56
    6.0          37.70

[editar] Véase también

Gestiona los indicadores de formato.
(función miembro pública) [editar]
Borra el indicador de formato específico.
(función miembro pública) [editar]