gmtime_r – вычисление UTC времени.
Синтаксис:
#include < time.h >
struct tm *gmtime_r (const time_t *clock, struct tm *m_time);
Аргументы:
s_time – указатель на переменную, содержащую системное время в секундах с 0 часов 1 января 1970 года.
m_time – указатель на структуру, в которую будет помещен результат преобразования
Возвращаемое значение:
Указатель на структуру, содержащую преобразованное системное время в дату и UTC время (Всемирное координированное время - Coordinated Universal Time) , то есть указатель на структуру указанную в аргументе m_time.
Описание:
Функция gmtime_r () преобразует системное время в секундах в дату и всемирное координированное время. Результат помещается в структуру типа tm, на которую указывает аргумент m_time. Так же функция возвращает указатель на эту структуру.
Структура tm содержит элементы:
int tm_sec – секунды (отсчет с 0);
int tm_min – минуты (отсчет с 0);
int tm_hour - часы (отсчет с 0);
int tm_mday - день месяца (отсчет с 1);
int tm_mon - месяц (отсчет с 0);
int tm_year – год (за начала отсчета принят 1900 год);
int tm_wday - день недели (воскресенье - 0);
int tm_yday - день в году (отсчет с 0);
int tm_isdst - признак "летнее время" (больше нуля если «летнее время», ноль если «зимнее время», меньше нуля если нет информации.
Пример:
В примере определяется текущее системное время в секундах, преобразуется в UTC-время с помощью функции gmtime_r, затем локальное время преобразуется в текстовую строку с помощью функции asctime_r и результат выводится в консоль.
#include < stdio.h > //Для printf
#include < time.h > //Для time, gmtime_r, asctime_r
int main (void)
{
// Переменная для сохранения текущего системного времени
long int s_time;
// Структура, в который будет помещен результат преобразования
struct tm m_time;
// Буфер, в который будет записана текстовая строка с временем
char buf[26]=””;
// Считываем текущее системное время
s_time = time (NULL);
// Преобразуем системное время в локальное
m_time = gmtime_r (&s_time, &m_time);
// С помощью функции asctime_r преобразуем локальное время в строку
// и выводим результат на консоль
printf (“Время: %s\n”,asctime_r (&m_time, buf) );
return 0;
}
| |
Результат:
Время: Sat May 18 14:12:09 2014
|
Смотри так же:
asctime,
asctime_r,
clock_getres,
clock_gettime,
clock_gettime,
ctime,
ctime_r,
difftime,
gmtime,
gmtime_r,
localtime,
localtime_r,
mktime,
strftime,
time
|