Defined in header <time.h> | ||
---|---|---|
struct tm; |
Structure holding a calendar date and time broken down into its components.
Member objects
int tm_sec | seconds after the minute – [0, 61](until C99) / [0, 60] (since C99)[note 1] |
int tm_min | minutes after the hour – [0, 59] |
int tm_hour | hours since midnight – [0, 23] |
int tm_mday | day of the month – [1, 31] |
int tm_mon | months since January – [0, 11] |
int tm_year | years since 1900 |
int tm_wday | days since Sunday – [0, 6] |
int tm_yday | days since January 1 – [0, 365] |
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 |
Notes
- Range allows for a positive leap second. Two leap seconds in the same minute are not allowed (the C90 range 0..61 was a defect)
Example
Show the start of calendar time.
#include <stdio.h> #include <time.h> int main(void) { struct tm start = {.tm_mday=1}; mktime(&start); printf("%s\n", asctime(&start)); }
Possible output:
Mon Jan 1 00:00:00 1900
References
- C11 standard (ISO/IEC 9899:2011):
- 7.27.1/3 Components of time (p: 388)
- C99 standard (ISO/IEC 9899:1999):
- 7.23.1/3 Components of time (p: 338)
- C89/C90 standard (ISO/IEC 9899:1990):
- 4.12.1 Components of time
See also
(C11) | converts time since epoch to calendar time expressed as local time (function) |
(C11) | converts time since epoch to calendar time expressed as Coordinated Universal Time (UTC) (function) |
C++ documentation for tm |
Please login to continue.