Namespaces
Variants

std::ios_base:: setf

From cppreference.net
fmtflags setf ( fmtflags flags ) ;
(1)
fmtflags setf ( fmtflags flags, fmtflags mask ) ;
(2)

Définit les indicateurs de formatage selon les paramètres spécifiés.

1) Définit les indicateurs de formatage identifiés par flags . Effectivement, l'opération suivante est effectuée fl = fl | flags fl définit l'état des indicateurs de formatage internes.
2) Efface les indicateurs de formatage sous mask , et définit les indicateurs effacés à ceux spécifiés par flags . Effectivement l'opération suivante est effectuée fl = ( fl & ~mask ) | ( flags & mask ) fl définit l'état des indicateurs de formatage internes.

Table des matières

Paramètres

flags, mask - nouveau paramètre de formatage. mask définit les drapeaux qui peuvent être modifiés, flags définit quels drapeaux parmi ceux à modifier doivent être activés (les autres seront désactivés). Les deux paramètres peuvent être une combinaison des constantes de drapeaux de formatage
Indicateurs de formatage
Constante Explication
dec utiliser la base décimale pour les E/S entières : voir std::dec
oct utiliser la base octale pour les E/S entières : voir std::oct
hex utiliser la base hexadécimale pour les E/S entières : voir std::hex
basefield dec | oct | hex . Utile pour les opérations de masquage
left alignement à gauche (ajoute des caractères de remplissage à droite) : voir std::left
right alignement à droite (ajoute des caractères de remplissage à gauche) : voir std::right
internal alignement interne (ajoute des caractères de remplissage au point désigné interne) : voir std::internal
adjustfield left | right | internal . Utile pour les opérations de masquage
scientific générer les types à virgule flottante en utilisant la notation scientifique, ou la notation hexadécimale si combiné avec fixed : voir std::scientific
fixed générer les types à virgule flottante en utilisant la notation fixe, ou la notation hexadécimale si combiné avec scientific : voir std::fixed
floatfield scientific | fixed . Utile pour les opérations de masquage
boolalpha insérer et extraire le type bool en format alphanumérique : voir std::boolalpha
showbase générer un préfixe indiquant la base numérique pour la sortie entière, requérir l'indicateur monétaire dans les E/S monétaires : voir std::showbase
showpoint générer un caractère de point décimal inconditionnellement pour la sortie des nombres à virgule flottante : voir std::showpoint
showpos générer un caractère + pour la sortie numérique non négative : voir std::showpos
skipws ignorer les espaces blancs initiaux avant certaines opérations d'entrée : voir std::skipws
unitbuf vider la sortie après chaque opération de sortie : voir std::unitbuf
uppercase remplacer certaines lettres minuscules par leurs équivalents majuscules dans certaines opérations de sortie : voir std::uppercase

Valeur de retour

Les indicateurs de formatage avant l'appel à la fonction.

Exemple

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

Sortie :

 radius  circumference
    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

Voir aussi

gère les indicateurs de format
(fonction membre publique)
efface un indicateur de format spécifique
(fonction membre publique)