CTIME(3C) DOMAIN/IX SYS5 CTIME(3C)
NAME
ctime, localtime, gmtime, asctime, tzset - convert date and
time to string
USAGE
#include <time.h>
char *ctime(clock)
long *clock;
struct tm *localtime(clock)
long *clock;
struct tm *gmtime(clock)
long *clock;
char *asctime(tm)
struct tm *tm;
extern long timezone;
extern int daylight;
extern char *tzname[2];
void tzset ()
DESCRIPTION
Ctime converts a long integer (pointed to by clock) that
represents the time in seconds since 00:00:00 GMT, January
1, 1970. Ctime then returns a pointer to a 26-character
string in the following form. (All the fields have constant
width.)
Sun Sep 16 01:03:52 1973\n\0
Localtime and gmtime return pointers to "tm" structures,
described below. Localtime corrects for the time zone and
for Daylight Savings Time if necessary; gmtime converts
directly to Greenwich Mean Time (GMT), which is the time the
DOMAIN/IX system uses.
Asctime converts a "tm" structure to a 26-character string,
as shown in the above example, and returns a pointer to the
string.
Printed 12/4/86 CTIME-1
CTIME(3C) DOMAIN/IX SYS5 CTIME(3C)
Declarations of all the functions and externals and the "tm"
structure are in the <time.h> header file. The structure
declaration is:
struct tm {
int tm_sec; /* seconds (0 - 59) */
int tm_min; /* minutes (0 - 59) */
int tm_hour; /* hours (0 - 23) */
int tm_mday; /* day of month (1 - 31) */
int tm_mon; /* month of year (0 - 11) */
int tm_year; /* year - 1900 */
int tm_wday; /* day of week (Sunday = 0) */
int tm_yday; /* day of year (0 - 365) */
int tm_isdst;
};
Tm_isdst is non-zero if Daylight Savings Time is in effect.
The external long variable timezone contains the difference,
in seconds, between GMT and local standard time (in EST,
timezone is 5*60*60); the external variable daylight is
non-zero only if the standard U.S.A. Daylight Savings Time
conversion should be applied. The program knows about the
peculiarities of this conversion in 1974 and 1975; if neces-
sary, a table for these years can be extended.
If an environment variable named TZ is present, asctime uses
the contents of the variable to override the default time
zone. The value of TZ must be a three-letter time zone
name, followed by a number representing the difference
between local time and Greenwich Mean Time in hours, fol-
lowed by an optional three-letter name for a daylight time
zone. For example, the setting for Massachusetts would be
EST5EDT. Setting TZ thus changes the values of the external
variables timezone and daylight; it also sets the time zone
names contained in the external variable
*tzname[2] = { "EST", "EDT" };
from the environment variable TZ. The function tzset sets
these external variables from TZ; tzset is called by asctime
and may also be called explicitly by the user.
TZ is set by default, when the user logs on, to a value in
the local /etc/profile file.
CTIME-2 Printed 12/4/86
CTIME(3C) DOMAIN/IX SYS5 CTIME(3C)
NOTES
The return values point to static data whose content is
overwritten by each call.
RELATED INFORMATION
time(2), getenv(3C), environ(5)
Printed 12/4/86 CTIME-3