Namespaces
Variants

std:: setfill

From cppreference.net
< cpp ‎ | io ‎ | manip
Definido en el encabezado <iomanip>
template < class CharT >
/*unspecified*/ setfill ( CharT c ) ;

Cuando se utiliza en una expresión out << setfill ( c ) establece el carácter de relleno del flujo out a c .

Contenidos

Parámetros

c - nuevo valor para el carácter de relleno

Valor de retorno

Un objeto de tipo no especificado tal que

  • si out es un objeto de tipo std:: basic_ostream < CharT, Traits > , la expresión out << setfill ( c )
    • tiene tipo std:: basic_ostream < CharT, Traits > &
    • tiene valor out
    • se comporta como si llamara a f ( out, c )

donde la función f se define como:

template<class CharT, class Traits>
void f(std::basic_ios<CharT, Traits>& str, CharT c)
{
    // establecer carácter de relleno
    str.fill(c);
}

Notas

El carácter de relleno actual puede obtenerse con std::ostream::fill .

Ejemplo

#include <iomanip>
#include <iostream>
int main()
{
    std::cout << "default fill: [" << std::setw(10) << 42 << "]\n"
              << "setfill('*'): [" << std::setfill('*')
                                   << std::setw(10) << 42 << "]\n";
}

Salida:

default fill: [        42]
setfill('*'): [********42]

Informes de defectos

Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares de C++ publicados anteriormente.

DR Aplicado a Comportamiento publicado Comportamiento correcto
LWG 183 C++98 setbase solo podía usarse con
streams de tipo std::ostream
utilizable con cualquier stream
de caracteres de salida

Véase también

gestiona el carácter de relleno
(función miembro pública de std::basic_ios<CharT,Traits> )
establece la ubicación de los caracteres de relleno
(función)
cambia el ancho del siguiente campo de entrada/salida
(función)