TIME(2)

ИМЯ
time - получить время в секундах

ОБЗОР
#include <time.h>

time_t time(time_t *t);

ОПИСАНИЕ
time() возвращает количество секунд, которое прошло с начала эпохи, 1970-01-01 00:00:00 +0000 (UTC). Если t не равно NULL, то возвращаемое значение также сохраняется в область памяти, на которую указывает t.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При удачном завершении работы возвращается время в секундах, прошедшее с начала эпохи. При ошибке возвращается ((time_t) -1), а errno устанавливается должным образом.

ОШИБКИ

EFAULT
    t указывает за пределы доступного адресного пространства.

СООТВЕТСТВИЕ СТАНДАРТАМ
SVr4, 4.3BSD, C89, C99, POSIX.1-2001. В POSIX не определены условия возникновения ошибок.

ЗАМЕЧАНИЯ
В POSIX.1 для определения секунд, прошедших с начала эпохи используется формула для приблизительного подсчёта количества секунд между указываемым временем и началом эпохи. Эта формула учитывает тот факт, что все годы, номер которых делится на 4, считаются високосными, но годы, которые делятся на 100 не високосные, если они также не делятся на 400 (которые нужно считать високосными). Это значение не является указанием на точное количество секунд между заданным временем и началом эпохи вследствие игнорирования високосных секунд и по причине того, что время в часах необязательно синхронизировано со временем стандартного источника. Считается, что это значение соответствует настоящему количеству секунд, прошедшему с начала эпохи. Дополнительную информацию можно найти в POSIX.1-2008 Rationale A.4.15.

СМОТРИТЕ ТАКЖЕ
date(1), gettimeofday(2), ctime(3), ftime(3), time(7)