Formatierung von Datumsausgabe



  • Hallo, ich hab zum Üben von der Funktionsweise von Klassen eine Klasse Datum erstellt, die entweder das aktuelle Datum ausgeben kann oder man weist ihr andere Daten zu. Für die Ausgabe des Datums habe ich folgende Methode:

    void Datum::printDatum()
    {
        if(tag < 10 && monat < 10)
            cout << '0' << tag << '.' << '0' << monat << '.' << jahr << endl;
        else if (tag < 10 && monat > 10)
            cout << '0' << tag << '.' << monat << '.' << jahr << endl;
        else if (tag > 10 && monat < 10)
            cout << tag << '.' << '0' << monat << '.' << jahr << endl;
        else 
            cout << tag << '.' << monat << '.' << jahr << endl;
    }
    

    Meine Frage ist im Prinzip nur, ob man die Verzweigung auch irgendwie anders ausdrücken kann? Diese Variante kam mir irgendwie umständlich vor.

    Gruß



  • std::cout << std::setw(2) << std::setfill('0') << tag
              << std::setw(2) << std::setfill('0') << monat
              << jahr << std::endl;
    


  • Schau dir mal die Manipulatoren an, besonders std::setfill .



  • Oh natürlich, setfill hab ich mir schon vor 'ner Weile angeschaut, nur irgendwie gar nicht daran gedacht. Kopf -> Tisch 🤡

    Danke an euch, wäre geklärt.



  • diese Info über die Ausgabe eines Wochentags könnte für Dich auch interessant sein.


Log in to reply