Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
TIME(3)		       FreeBSD Library Functions Manual		       TIME(3)

NAME
     time -- get time of day

LIBRARY
     Standard C	Library	(libc, -lc)

SYNOPSIS
     #include <time.h>

     time_t
     time(time_t *tloc);

DESCRIPTION
     The time()	function returns the value of time in seconds since 0 hours, 0
     minutes, 0	seconds, January 1, 1970, Coordinated Universal	Time (UTC).
     If	an error occurs, time()	returns	the value (time_t)-1.

     The return	value is also stored in	*tloc, provided	that tloc is non-null.

ERRORS
     The time()	function may fail for any of the reasons described in
     clock_gettime(2).

SEE ALSO
     clock_gettime(2), gettimeofday(2),	ctime(3)

STANDARDS
     The time function conforms	to IEEE	Std 1003.1-2008	("POSIX.1").

HISTORY
     The time()	system call first appeared in Version 1	AT&T UNIX.  Through
     the Version 3 AT&T	UNIX, it returned 60 Hz	ticks since an epoch that
     changed occasionally, because it was a 32-bit value that overflowed in a
     little over 2 years.

     In	Version	4 AT&T UNIX the	granularity of the return value	was reduced to
     whole seconds, delaying the aforementioned	overflow until 2038.

     Version 7 AT&T UNIX introduced the	ftime()	system call, which returned
     time at a millisecond level, though retained the gtime() system call (ex-
     posed as time() in	userland).  time() could have been implemented as a
     wrapper around ftime(), but that wasn't done.

     4.1cBSD implemented a higher-precision time function gettimeofday() to
     replace ftime() and reimplemented time() in terms of that.

     Since FreeBSD 9 the implementation	of time() uses
     clock_gettime(CLOCK_SECOND) instead of gettimeofday() for performance
     reasons.

BUGS
     Neither ISO/IEC 9899:1999 ("ISO C99") nor IEEE Std	1003.1-2001
     ("POSIX.1") requires time() to set	errno on failure; thus,	it is impossi-
     ble for an	application to distinguish the valid time value	-1 (represent-
     ing the last UTC second of	1969) from the error return value.

     Systems conforming	to earlier versions of the C and POSIX standards (in-
     cluding older versions of FreeBSD)	did not	set *tloc in the error case.

FreeBSD	13.0			April 14, 2022			  FreeBSD 13.0

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | ERRORS | SEE ALSO | STANDARDS | HISTORY | BUGS

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=time&sektion=3&manpath=FreeBSD+13.2-RELEASE>

home | help