- time types
The <time.h> header declares the structure tm, which includes the following members:
int tm_sec /* seconds [0,60] */ int tm_min /* minutes [0,59] */ int tm_hour /* hour [0,23] */ int tm_mday /* day of month [1,31] */ int tm_mon /* month of year [0,11] */ int tm_year /* years since 1900 */ int tm_wday /* day of week [0,6] (Sunday =0) */ int tm_yday /* day of year [0,365] */ int tm_isdst /* daylight savings flag */
The value of tm_isdst is positive if Daylight Saving Time is in effect, 0 if Daylight Saving Time is not in effect, and negative if the information is not available.
The <time.h> header defines the following symbolic names:
Null pointer constant.
A number used to convert the value returned by the clock() function into seconds. See clock(3C).
The identifier of the CPU-time clock associated with the process making a clock() or timer*() function call.
The identifier of the CPU-time clock associated with the thread making a clock() or timer*() function call.
The <time.h> header declares the timespec structure, which has the following members:
time_t tv_sec /* seconds */ long tv_nsec /* nanoseconds */
The <time.h> header declares the itimerspec structure, which has the following members:
struct timespec it_interval /* timer period */ struct timespec it_value /* timer expiration */
The following manifest constants are defined:
The identifier of the system-wide realtime clock.
Flag indicating time is absolute. For functions taking timer objects, this refers to the clock associated with the timer.
The identifier for the system-wide monotonic clock, which is defined as a clock whose value cannot be set with clock_settime() and that cannot have backward clock jumps. The maximum possible clock jump is implementation-defined. See clock_settime(3RT).
The clock_t, size_t, time_t, clockid_t, and timer_t types are defined as described in <sys/types.h>. See types.h(3HEAD).
Although the value of CLOCKS_PER_SEC is required to be 1 million on all standard-conforming systems, it can be variable on other systems, and it should not be assumed that CLOCKS_PER_SEC is a compile-time constant.
The <time.h> header provides a declaration for getdate_err.
The following are declared as variables:
extern int daylight; extern long timezone; extern char *tzname;
Inclusion of the <time.h> header can make visible all symbols from the <signal.h> header.
The range [0,60] for tm_sec allows for the occasional leap second.
tm_year is a signed value; therefore, years before 1900 can be represented.
See attributes(5) for descriptions of the following attributes:
time(2), utime(2), clock(3C), ctime(3C), difftime(3C), getdate(3C), mktime(3C), strftime(3C), strptime(3C), types.h(3HEAD), clock_settime(3RT), nanosleep(3RT), timer_create(3RT), timer_delete(3RT), timer_settime(3RT), attributes(5), standards(5)