CTIME(2) CTIME(2)
NAME
ctime, localtime, gmtime, asctime, timezone - convert date
and time to ASCII
SYNOPSIS
char* ctime(long clock)
Tm* localtime(long clock)
Tm* gmtime(long clock)
char* asctime(Tm *tm)
DESCRIPTION
Ctime converts a time clock such as returned by time(2) into
ASCII and returns a pointer to a 30-byte string in the fol-
lowing form. All the fields have constant width.
Wed Aug 5 01:07:47 EST 1973\n\0
Localtime and gmtime return pointers to structures contain-
ing the broken-down time. Localtime corrects for the time
zone and possible daylight savings time; gmtime converts
directly to GMT. Asctime converts a broken-down time to
ASCII and returns a pointer to a 30-character string.
typedef
struct {
int sec; /* seconds (range 0..59) */
int min; /* minutes (0..59) */
int hour; /* hours (0..23) */
int mday; /* day of the month (1..31) */
int mon; /* month of the year (0..11) */
int year; /* year A.D. - 1900 */
int wday; /* day of week (0..6, Sunday = 0) */
int yday; /* day of year (0..365) */
char zone[4]; /* time zone name */
} Tm;
When local time is first requested, the program consults the
timezone environment variable to determine the time zone and
converts accordingly. (This variable is set at system boot
time by init(8).) The timezone variable contains the normal
time zone name and its difference from GMT in seconds fol-
lowed by an alternate (daylight) time zone name and its dif-
ference followed by a newline. The remainder is a list of
pairs of times (seconds past the start of 1970, in the first
time zone) when the alternate time zone applies. For exam-
ple:
EST -18000 EDT -14400
Page 1 Plan 9 (printed 11/6/25)
CTIME(2) CTIME(2)
9943200 25664400 41392800 57718800 ...
Greenwich Mean Time is represented by
GMT 0
SEE ALSO
time(2), init(8)
BUGS
The return values point to static data whose content is
overwritten by each call.
Daylight Savings Time is ``normal'' in the Southern hemi-
sphere.
These routines are not equipped to handle non-ASCII text.
Page 2 Plan 9 (printed 11/6/25)