C++:
Den aktuellen Datum abrufen
Wie:
C++ bietet mehrere Möglichkeiten, das aktuelle Datum zu erhalten, einschließlich der C++-Standardbibliothek und Drittanbieter-Bibliotheken wie Boost. Die folgenden Beispiele zeigen, wie man diese Aufgabe bewältigen kann.
Verwendung von <chrono>
(C++20 und später)
C++20 führte mehr Funktionalitäten in der <chrono>
-Bibliothek ein, was es unkompliziert macht, das aktuelle Datum zu erhalten:
#include <iostream>
#include <chrono>
#include <format> // Für std::format (C++20)
int main() {
auto aktueller_zeitpunkt = std::chrono::system_clock::now(); // Erfasse die aktuelle Zeit
auto aktuelle_zeit_t = std::chrono::system_clock::to_time_t(aktueller_zeitpunkt); // Konvertiere zu time_t
// Formatieren der Zeit zu einem lesbaren Format
std::cout << "Aktuelles Datum: " << std::format("{:%Y-%m-%d}", std::chrono::system_clock::to_time_t(aktueller_zeitpunkt)) << std::endl;
return 0;
}
Beispielausgabe:
Aktuelles Datum: 2023-03-15
Verwendung von <ctime>
Für Programmierer, die mit älteren Versionen von C++ arbeiten oder die traditionelle C-Bibliothek bevorzugen:
#include <iostream>
#include <ctime>
int main() {
std::time_t t = std::time(0); // Hole die aktuelle Zeit
std::tm* jetzt = std::localtime(&t);
std::cout << "Aktuelles Datum: "
<< (jetzt->tm_year + 1900) << '-'
<< (jetzt->tm_mon + 1) << '-'
<< jetzt->tm_mday
<< std::endl;
return 0;
}
Beispielausgabe:
Aktuelles Datum: 2023-03-15
Verwendung von Boost Date_Time
Für Projekte, die die Boost-Bibliotheken nutzen, bietet die Boost Date_Time-Bibliothek eine alternative Methode, um das aktuelle Datum zu erhalten:
#include <iostream>
#include <boost/date_time.hpp>
int main() {
// Hole den aktuellen Tag mit Boosts Gregorianischem Kalender
boost::gregorian::date heute = boost::gregorian::day_clock::local_day();
std::cout << "Aktuelles Datum: " << heute << std::endl;
return 0;
}
Beispielausgabe:
Aktuelles Datum: 2023-Mar-15
Diese Beispiele bieten eine grundlegende Basis für die Arbeit mit Daten in C++, was für eine breite Palette von Anwendungen entscheidend ist.