gmtime, _gmtime32, _gmtime64

Преобразовать значение времени на структуру.Более безопасные версии этих функций доступны; см. gmtime_s, _gmtime32_s, _gmtime64_s.

struct tm *gmtime( 
   const time_t *timer 
);
struct tm *_gmtime32( 
   const time32_t *timer 
);
struct tm *_gmtime64( 
   const __time64_t *timer 
);

Параметры

  • timer
    Указатель к хранимому времени.Время представляется в виде секунд, прошедшего с полуночи (00:00: 00, 1-ое января 1970), координируемый всемирное время (UTC).

Возвращаемое значение

Возвращает указатель на структуру типа тм.Поля, возвращаемой структуры содержат рассчитанное значение timer аргумент время в формате UTC, а не в локальном времени.Каждое из полей структуры типа intследующим образом:

  • tm_sec
    С помощью секунды после минуты (от 0 до 59).

  • tm_min
    Минуты после часа (от 0 до 59).

  • tm_hour
    Количество часов, истекших после полуночи (от 0 до 23).

  • tm_mday
    День месяца (от 1 до 31).

  • tm_mon
    Месяц (от 0 до 11; январь = 0).

  • tm_year
    Year (текущий год минус 1900).

  • tm_wday
    День недели (от 0 до 6; воскресенье = 0).

  • tm_yday
    День года (от 0 до 365; 1-ое января = 0).

  • tm_isdst
    Всегда 0 gmtime.

А 32 - и 64-разрядная версии 64 gmtime" mktime" mkgmtimeи localtimeвся использование одного tm структура в поток для преобразования.Каждый вызов к одной из этих функций уничтожает результат любого предыдущего вызова.If timer перед полночью, представляющий дату 1-ое января 1970., gmtime возвращает NULL.Отсутствие получение ошибки.

_gmtime64, который использует __time64_t структура позволяет даты, выражаемые вверх до 23:59: 59 - 31-ое декабря 3000 - время в формате UTC, тогда как _gmtime32 только представление даты до 03:14: 7-ое января 19, 2038 В формате UTC.Полуночи 1-ое января 1970, нижняя граница диапазона дат для обеих этих функций.

gmtime встроенная функция, которая принимает значение _gmtime64 и time_t равно __time64_t.Если необходимо принудительно компилятора интерпретировать time_t например, старое пакетом обновления 32 (sp2) time_tможно указать _USE_32BIT_TIME_T.Это вызовет gmtime быть в выровнянным _gmtime32.Это не рекомендуется, поскольку приложение может завершиться ошибкой после 18-ого января 2038 и не разрешено на платформах с пакетом обновления 64 (sp2).

Эти функции проверяют их параметр.If timer указатель null или таймера если значение отрицательное, вызывающие эти функции недопустимы обработчик параметра, как описано в разделе Проверка параметров.Если выполнение может быть продолжено, то функции возвращают NULL и errno В EINVAL.

Заметки

_gmtime32 функция нарушает вниз timer значение и сохраняет его в выбранной структуре типа статически tmопределяется в TIME.H.Значение timer обычно получает из вызова time функция.

ПримечаниеПримечание

Среда должна пытаться определить целевого объекта ли сохранение дневного время источника света в силу.Библиотека времени выполнения c использует правила Соединенные персоналом для реализации вычисление летнего времени не).

Требования

Процедура

Обязательный заголовок

gmtime

<time.h>

_gmtime32

<time.h>

_gmtime64

<time.h>

Дополнительные сведения о совместимости см. Совместимость во введении.

Пример

// crt_gmtime.c
// compile with: /W3
// This program uses _gmtime64 to convert a long-
// integer representation of coordinated universal time
// to a structure named newtime, then uses asctime to
// convert this structure to an output string.
 
#include <time.h>
#include <stdio.h>

int main( void )
{
   struct tm *newtime;
   __int64 ltime;
   char buff[80];

   _time64( &ltime );

   // Obtain coordinated universal time:
   newtime = _gmtime64( &ltime ); // C4996
   // Note: _gmtime64 is deprecated; consider using _gmtime64_s
   asctime_s( buff, sizeof(buff), newtime );
   printf( "Coordinated universal time is %s\n", buff );
}
  

Эквивалент в .NET Framework

См. также

Ссылки

Управление временем

asctime, _wasctime

ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64

_ftime, _ftime32, _ftime64

gmtime_s, _gmtime32_s, _gmtime64_s

localtime, _localtime32, _localtime64

_mkgmtime, _mkgmtime32, _mkgmtime64

mktime, _mktime32, _mktime64

time, _time32, _time64