DESCRIPTION
The
<time.h> header defines the
tm structure that contains calendar dates and time broken down into components. The following standards-compliant fields are present:
Type |
Field |
Represents |
Range |
int |
tm_sec |
Seconds |
[0, 61] |
int |
tm_min |
Minutes |
[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_isdt |
Positive if daylight savings |
>= 0 |
The tm structure is used by various common library routines such as mktime(3), localtime(3), and strptime(3). All fields described above are defined in the IEEE Std 1003.1-2008 (“POSIX.1”) standard.
NetBSD Extensions
In addition, the following NetBSD-specific fields are available:
Type |
Field |
Represents |
int |
tm_gmtoff |
Offset from UTC in seconds |
__aconst char |
tm_zone |
Timezone abbreviation |
The tm_zone and tm_gmtoff fields exist, and are filled in by applicable library routines, only if arrangements to do so were made when the library containing these functions was created. There is no guarantee that these fields will continue to exist in this form in future releases of NetBSD.
The tm_gmtoff field denotes the offset (in seconds) of the time represented from UTC, with positive values indicating east of the Prime Meridian. The tm_zone field will become invalid and point to freed storage if the corresponding struct tm was returned by localtime_rz(3) and the const timezone_t tz argument has been freed by tzfree(3).