std::tm - cppreference.com

From cppreference.com

structtm;Structure holding a calendar date and time broken down into its components.

Member objects

int tm_sec

seconds after the minute – [0, 61](until C++11)[0, 60](since C++11)

[note 1]

(public member object)int tm_min

minutes after the hour – [0, 59]
(public member object)int tm_hour

hours since midnight – [0, 23]
(public member object)int tm_mday

day of the month – [1, 31]
(public member object)int tm_mon

months since January – [0, 11]
(public member object)int tm_year

years since 1900
(public member object)int tm_wday

days since Sunday – [0, 6]
(public member object)int tm_yday

days since January 1 – [0, 365]
(public member object)int tm_isdst

Daylight Saving Time flag. The value is positive if DST is in effect, zero if not and negative if no information is available.
(public member object)

Range allows for a positive leap second. Two leap seconds in the same minute are not allowed (the range [0, 61] was a defect introduced in C89 and corrected in C99).

Notes

BSD, GNU and musl C library support two additional members, which are standardized in

POSIX.1-2024

.

long tm_gmtoff

seconds east of UTC
(public member object)const char* tm_zone

timezone abbreviation
(public member object)Example

Run this code

#include<ctime>#include<iostream>intmain(){std::tmtm{};tm.tm_year=2022-1900;tm.tm_mday=1;std::mktime(&tm);std::cout<<std::asctime(&tm);// note implicit trailing '\n'}Possible output:

Sat Jan 1 00:00:00 2022 See also