Jak uzyskać aktualny czas i datę w C++?

Czy istnieje wieloplatformowy sposób na uzyskanie aktualnej daty i czasu w C++?

C++ dzieli swoje funkcje daty i czasu z C. Struktura [tm][1] jest prawdopodobnie najłatwiejsza do pracy dla programisty C++ - poniższy wypisuje dzisiejszą'datę:


#include 
#include 

int main() {
    std::time_t t = std::time(0);   // get time now
    std::tm* now = std::localtime(&t);
    std::cout tm_year + 1900) 
Komentarze (11)

Biblioteki std C dostarczają time(). Są to sekundy od epoki i mogą być konwertowane na datę i H:M:S przy użyciu standardowych funkcji C. Boost posiada również bibliotekę czasu/daty, którą możesz sprawdzić.

time_t  timev;
time(&timev);
Komentarze (3)

Biblioteka standardowa C++ nie dostarcza odpowiedniego typu daty. C++ dziedziczy strukty i funkcje do manipulacji datą i czasem z języka C, wraz z kilkoma funkcjami wejścia i wyjścia daty/czasu, które uwzględniają lokalizację.


// Current date/time based on current system
time_t now = time(0);

// Convert now to tm struct for local timezone
tm* localtm = localtime(&now);
cout 
Komentarze (0)