@node Timefns @chapter Time Functions (@file{time.h}) This chapter groups functions used either for reporting on time (elapsed, current, or compute time) or to perform calculations based on time. The header file @file{time.h} defines three types. @code{clock_t} and @code{time_t} are both used for representations of time particularly suitable for arithmetic. (In this implementation, quantities of type @code{clock_t} have the highest resolution possible on your machine, and quantities of type @code{time_t} resolve to seconds.) @code{size_t} is also defined if necessary for quantities representing sizes. @file{time.h} also defines the structure @code{tm} for the traditional representation of Gregorian calendar time as a series of numbers, with the following fields: @table @code @item tm_sec Seconds, between 0 and 60 inclusive (60 allows for leap seconds). @item tm_min Minutes, between 0 and 59 inclusive. @item tm_hour Hours, between 0 and 23 inclusive. @item tm_mday Day of the month, between 1 and 31 inclusive. @item tm_mon Month, between 0 (January) and 11 (December). @item tm_year Year (since 1900), can be negative for earlier years. @item tm_wday Day of week, between 0 (Sunday) and 6 (Saturday). @item tm_yday Number of days elapsed since last January 1, between 0 and 365 inclusive. @item tm_isdst Daylight Savings Time flag: positive means DST in effect, zero means DST not in effect, negative means no information about DST is available. Although for mktime(), negative means that it should decide if DST is in effect or not. @end table @menu * Function asctime:: Format time as string * Function clock:: Cumulative processor time * Function ctime:: Convert time to local and format as string * Function difftime:: Subtract two times * Function gmtime:: Convert time to UTC (GMT) traditional representation * Function localtime:: Convert time to local representation * Function mktime:: Convert time to arithmetic representation * Function strftime:: Convert date and time to a user-formatted string * Function time:: Get current calendar time (as single number) * Function __tz_lock:: Lock time zone global variables * Function tzset:: Set timezone info @end menu @page @include time/asctime.def @page @include time/clock.def @page @include time/ctime.def @page @include time/difftime.def @page @include time/gmtime.def @page @include time/lcltime.def @page @include time/mktime.def @page @include time/strftime.def @page @include time/time.def @page @include time/tzlock.def @page @include time/tzset.def