The standard function library defines several functions that deal with the date and time. It also defines functions that handle the geopolitical information associated with a program.
The time and date functions require the header <time.h>. This header defines three time-related types : clock_t, time_t, and tm. The type clock_t and time_t are capable of representing the system time and date as some sort of integer. This is called the calendar time. The structure type tm holds the date and time broken down into its elements. The tm structure contains the following members :
int tm_sec; /* seconds, 0-60 */ int tm_min; /* minutes, 0-59 */ int tm_hour; /* hours, 0.23 */ int tm_mday; /* day of the month, 1-31 */ int tm_mon; /* months since Jan, 0-11 */ int tm_year; /* years from 1900 */ int tm_wday; /* days since Sunday, 0-6 */ int tm_yday; /* days since Jan 1, 0-365 */ int tm_isdst /* Daylight Saving Time indicator */
The value of tm_isdst will be positive if daylight saving time is in effect, zero if it is not in effect, and negative if there is no information available. This form of the time and date is called the broken-down-time.
In addition, <time.h> defines the macro CLOCKS_PER_SEC, which is the number of system clock ticks per second.
The geopolitical environmental functions require the header <locale.h>. It defines the structure lconv, which is described under the function localeconv().