dwww Home | Manual pages | Find package

time(2)                       System Calls Manual                       time(2)

NAME
       time - get time in seconds

LIBRARY
       Standard C library (libc, -lc)

SYNOPSIS
       #include <time.h>

       time_t time(time_t *_Nullable tloc);

DESCRIPTION
       time()  returns  the  time  as  the  number  of seconds since the Epoch,
       1970-01-01 00:00:00 +0000 (UTC).

       If tloc is non-NULL, the return value  is  also  stored  in  the  memory
       pointed to by tloc.

RETURN VALUE
       On  success,  the  value of time in seconds since the Epoch is returned.
       On error, ((time_t) -1) is returned, and errno is set  to  indicate  the
       error.

ERRORS
       EOVERFLOW
              The  time cannot be represented as a time_t value.  This can hap-
              pen if an executable with 32-bit time_t is run on a 64-bit kernel
              when the time is 2038-01-19 03:14:08 UTC or later.  However, when
              the system time is out of time_t range in other  situations,  the
              behavior is undefined.

       EFAULT tloc points outside your accessible address space (but see BUGS).

              On systems where the C library time() wrapper function invokes an
              implementation  provided by the vdso(7) (so that there is no trap
              into the kernel),  an  invalid  address  may  instead  trigger  a
              SIGSEGV signal.

VERSIONS
       POSIX.1  defines  seconds  since the Epoch using a formula that approxi-
       mates the number of seconds between a  specified  time  and  the  Epoch.
       This  formula  takes account of the facts that all years that are evenly
       divisible by 4 are leap years, but years that are  evenly  divisible  by
       100  are not leap years unless they are also evenly divisible by 400, in
       which case they are leap years.  This value is not the same as  the  ac-
       tual  number  of seconds between the time and the Epoch, because of leap
       seconds and because system clocks are not required to be synchronized to
       a standard reference.  Linux systems normally follow the POSIX  require-
       ment that this value ignore leap seconds, so that conforming systems in-
       terpret it consistently; see POSIX.1-2018 Rationale A.4.16.

       Applications  intended  to  run  after  2038 should use ABIs with time_t
       wider than 32 bits; see time_t(3type).

   C library/kernel differences
       On some architectures, an implementation of time() is  provided  in  the
       vdso(7).

STANDARDS
       C11, POSIX.1-2008.

HISTORY
       SVr4, 4.3BSD, C89, POSIX.1-2001.

BUGS
       Error  returns from this system call are indistinguishable from success-
       ful reports that the time is a few seconds before the Epoch,  so  the  C
       library wrapper function never sets errno as a result of this call.

       The  tloc argument is obsolescent and should always be NULL in new code.
       When tloc is NULL, the call cannot fail.

SEE ALSO
       date(1), gettimeofday(2), ctime(3), ftime(3), time(7), vdso(7)

Linux man-pages 6.9.1              2024-05-02                           time(2)

Generated by dwww version 1.16 on Tue Dec 16 04:29:38 CET 2025.