Namespaces
Variants

std::ios_base:: setf

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

Setzt die Formatierungsflags auf die angegebenen Einstellungen.

1) Setzt die Formatierungsflags, die durch flags identifiziert werden. Effektiv wird folgende Operation ausgeführt: fl = fl | flags , wobei fl den Zustand der internen Formatierungsflags definiert.
2) Löscht die Formatierungsflags unter mask und setzt die gelöschten Flags auf die durch flags spezifizierten. Effektiv wird folgende Operation durchgeführt: fl = ( fl & ~mask ) | ( flags & mask ) wobei fl den Zustand der internen Formatierungsflags definiert.

Inhaltsverzeichnis

Parameter

flags, mask - Neue Formatierungseinstellung. mask definiert welche Flags geändert werden können, flags definiert welche Flags von denen, die geändert werden sollen, gesetzt werden sollen (andere werden gelöscht). Beide Parameter können eine Kombination der Formatierungsflags Konstanten sein
Formatierungsflags
Konstante Erklärung
dec Dezimalbasis für Ganzzahl-Ein-/Ausgabe verwenden: siehe std::dec
oct Oktalbasis für Ganzzahl-Ein-/Ausgabe verwenden: siehe std::oct
hex Hexadezimalbasis für Ganzzahl-Ein-/Ausgabe verwenden: siehe std::hex
basefield dec | oct | hex . Nützlich für Maskierungsoperationen
left Linksbündige Ausrichtung (fügt Füllzeichen rechts hinzu): siehe std::left
right Rechtsbündige Ausrichtung (fügt Füllzeichen links hinzu): siehe std::right
internal Interne Ausrichtung (fügt Füllzeichen an internem Punkt hinzu): siehe std::internal
adjustfield left | right | internal . Nützlich für Maskierungsoperationen
scientific Gleitkommatypen in wissenschaftlicher Notation oder Hexadezimalnotation (kombiniert mit fixed ) generieren: siehe std::scientific
fixed Gleitkommatypen in Festkommanotation oder Hexadezimalnotation (kombiniert mit scientific ) generieren: siehe std::fixed
floatfield scientific | fixed . Nützlich für Maskierungsoperationen
boolalpha bool -Typ im alphanumerischen Format einfügen und extrahieren: siehe std::boolalpha
showbase Präfix für numerische Basis bei Ganzzahlausgabe generieren, Währungsindikator bei monetärer Ein-/Ausgabe erfordern: siehe std::showbase
showpoint Dezimalpunkt für Gleitkommazahlenausgabe bedingungslos generieren: siehe std::showpoint
showpos + -Zeichen für nicht-negative numerische Ausgabe generieren: siehe std::showpos
skipws Führende Leerzeichen vor bestimmten Eingabeoperationen überspringen: siehe std::skipws
unitbuf Ausgabe nach jeder Ausgabeoperation leeren: siehe std::unitbuf
uppercase Bestimmte Kleinbuchstaben durch Großbuchstaben in bestimmten Ausgabeoperationen ersetzen: siehe std::uppercase

Rückgabewert

Die Formatierungsflags vor dem Aufruf der Funktion.

Beispiel

#include <iomanip>
#include <iostream>
#include <numbers>
int main()
{
    const double PI = std::numbers::pi;
    const int WIDTH = 15;
    std::cout.setf(std::ios::right); // equivalent: cout << right;
    std::cout << std::setw(WIDTH / 2) << "radius"
              << std::setw(WIDTH) << "circumference" << '\n';
    std::cout.setf(std::ios::fixed); // equivalent: 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';
}

Ausgabe:

 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

Siehe auch

verwaltet Format-Flags
(öffentliche Elementfunktion)
löscht spezifische Format-Flags
(öffentliche Elementfunktion)