Unix Man (Справочное руководство)


CTIME(3C)


CTIME(3C)

НАЗВАНИЕ


ctime, localtime, gmtime, asctime, cftime, ascftime, tzset - преобразование даты и времени в цепочку символов

СИНТАКСИС

#include <sys/types.h>

#include <time.h>

char *ctime (clock) time_t *clock;

struct tm *localtime (clock) time_t *clock;

struct tm *gmtime (clock) time_t *clock;

char *asctime (tm) struct tm *tm;

extern long timezone;

extern int daylight;

extern char *tzname[2];

void tzset ( )

ОПИСАНИЕ


Аргументом функций ctime, localtime и gmtime служит указатель clock на значение типа time_t, описанного во включаемом файле . Это значение интерпретируется как число секунд, отсчитываемое от 00:00:00 1 января 1970г. всемирного времени. Функция ctime возвращает указатель на цепочку из 26 символов вида

Sun Jan 16 01:03:52 1987\n\0

где все поля имеют постоянную длину.

Функции localtime и gmtime возвращают указатели на "tm"-структуры, описанные ниже. Localtime вносит поправку на часовой пояс и, возможно, на летнее время; gmtime осуществляет преобразование непосредственно ко всемирному времени, используемому в системе UNIX.

Функция asctime преобразует "tm"-структуру в цепочку из 26 символов (подобную приведенной выше) и возвращает указатель на эту цепочку.

Об явления всех функций, внешних об ектов, а также "tm"-структуры содержатся во включаемом файле . Описание структуры выглядит так:

struct tm { int tm_sec; /* Секунды (0-59) */ int tm_min; /* Минуты (0-59) */ int tm_hour; /* Часы (0-23) */ int tm_mday; /* День месяца (1-31) */ int tm_mon; /* Месяц года (0-11) */ int tm_year; /* Год - 1900 */ int tm_wday; /* День недели (Воскресенье = 0) */ int tm_yday; /* День года (0-365) */ int tm_isdst; };

Отличие tm_isdst от нуля указывает на то, что используется летнее время.

Внешняя переменная timezone типа long содержит разницу в секундах между всемирным временем и местным поясным временем. Скажем, для Восточного поясного времени EST (см. ПРИМЕЧАНИЯ) эта разница составляет 5*60*60. Внешняя переменная daylight отлична от нуля тогда и только тогда, когда должно осуществляться преобразование к летнему времени в соответствии со стандартом США. Программа учитывает особенности этого преобразования в 1974, 1975 годах; при необходимости перечень таких лет может быть расширен.

При наличии переменной окружения с именем TZ, функция asctime использует значение этой переменной для задания часового пояса, отличного от подразумеваемого. Значение TZ представляет из себя трехбуквенное название местного поясного времени (см. ПРИМЕЧАНИЯ), за которым следует число, выражающее отставание поясного времени от гринвичского в часах и далее, возможно, следует трехбуквенное название летнего времени, действующего в данном поясе. К примеру, для Нью-Джерси следует установить значение EST5EDT. Исходя из установленного TZ можно изменить значения внешних переменных timezone и daylight, а во внешнюю переменную




Начало  Назад  Вперед



Книжный магазин