File:  [Research Unix] / researchv10dc / man / adm / man3 / timec.3
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 17:21:34 2018 UTC (8 years, 1 month ago) by root
Branches: belllabs, MAIN
CVS tags: researchv10, HEAD
researchv10 Dan Cross

.TH TIMEC 3
.CT 2 data_man time_man
.SH NAME
timec, timegm, timelocal \- convert ASCII to time
.SH SYNOPSIS
.nf
.B #include <time.h>
.PP
.B long timec(string)
.B char *string;
.PP
.B long timegm(timep)
.B struct tm *timep;
.PP
.B long timelocal(timep, zone)
.B struct tm *timep;
.B char *zone;
.fi
.SH DESCRIPTION
These routines are inverse to
.IR ctime (3)
and its relatives.
See
.IR ctime (3)
for data layouts.
.PP
.I Timec
converts to system format a date
.I string
as produced by
.I ctime,
.IR date (1),
or
.IR ls (1).
An optional day of the week is ignored.
A month name and day are required.
A missing hour:min[:sec] field is taken to be 
.BR 00:00:00 .
An optional time zone (local time by default)
may appear before or after the year.
A missing year is assumed to be the past 12-month interval.
.PP
.I Timegm
returns the system-format time corresponding to
the broken-down GMT time
pointed to by
.IR timep .
In a copy of the broken-down time
.BR tm_mon 
is reduced mod 12 by carrying (positively or negatively) to
.BR tm_year .
Next
.B tm_mon
and
.B tm_mday
are added to
.B tm_yday
appropriately for
.BR tm_year .
Then
.BR tm_sec ,
.BR tm_min ,
.BR tm_hour ,
.BR tm_yday ,
and
.B tm_year 
are adjusted by carrying.
Finally the system-format date
is calculated from these 5 fields.
.PP
.I Timelocal
is like
.I timegm,
except that the broken-down time belongs to the specified time
.I zone,
or is local time if
.I zone 
is zero.
.PP
Time zones and months are recognized by the first three
characters, regardless of case.
.I Strings
for
.I ctime
may contain names longer than three characters
and may contain extra white space and commas.
.SH EXAMPLES
.TP
Set a date ahead one month:
.EX
struct tm brk_out = *localtime(&date);
brk_out.tm_yday = 0;
brk_out.tm_mon++; 
date = timelocal(&brk_out,0);
.EE
.HP
Convert a
.IR date (1)
string to system format:
.EX
date = timec("Sat Sep 27 20:59:11 EDT 1986");
.EE
.SH SEE ALSO
.IR ctime (3),
.IR time (2)
.SH BUGS
Unknown time zone names are taken to be GMT.
.br
Times before the epoch yield nonsense.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.