TIMEGM(3)

ИМЯ
timegm, timelocal - обратные gmtime и localtime функции

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

time_t timelocal(struct tm *tm);

time_t timegm(struct tm *tm);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

timelocal(), timegm():
    начиная с glibc 2.19:
        _DEFAULT_SOURCE
    glibc 2.19 и старее:
        _BSD_SOURCE || _SVID_SOURCE

ОПИСАНИЕ
timelocal() и timegm() являются обратными функциями по отношению к localtime(3) и gmtime(3). Обе функции принимают разделенное на составные части время и преобразуют его в календарное (измеряемое в секундах от начала Эпохи 1970-01-01 00:00:00 +0000, UTC). Различие между функциями заключается в том, что timelocal() во время преобразования принимает во внимание локальный часовой пояс, когда как timegm() во входном параметре использует Всемирное координированное время (Coordinated Universal Time, UTC).

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

ОШИБКИ

EOVERFLOW
    Результат не может быть представлен.

АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7).
Интерфейс | Атрибут | Значение
timelocal(), timegm() | Безвредность в нитях | MT-Safe env locale

СООТВЕТСТВИЕ СТАНДАРТАМ
Данные функции являются нестандартными расширениями GNU, которые также присутствуют в BSD. Избегайте их использования.

ЗАМЕЧАНИЯ
Функция timelocal() эквивалентна стандартной функции POSIX mktime(3). Нет ни одной причины когда-либо её использовать.

СМОТРИТЕ ТАКЖЕ
gmtime(3), localtime(3), mktime(3), tzset(3)