int raise(int sig)
raiseпосылает в программу сигнал sig . В случае неудачи возвращает ненулевое значение.
B10. Функции даты и времени: ‹time.h›
Заголовочный файл объявляет типы и функции, связанные с датой и временем. Некоторые функции имеют дело с местным временем, которое может отличаться от календарного, например в связи с зонированием времени. Типы clосk_tи time_t- арифметические типы для представления времени, a struct tm содержит компоненты календарного времени:
int tm_sec; - секунды от начала минуты (0,61); -- I.B.: все же наверно от 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,6);
int tm_yday; - дни с 1 января (0,365);
int tm_isdst; - признак летнего времени.
Значение tm_isdst - положительное, если время приходится на сезон, когда время суток сдвинуто на 1 час вперед, нуль в противном случае и отрицательное, если информация не доступна.
clock_t clock(void)
clockвозвращает время, фиксируемое процессором от начала выполнения программы, или -1, если оно не известно. Для выражения этого времени в секундах применяется формула clock()/CLOCKS_PER_SEC.
time_t time(time_t *tp)
timeвозвращает текущее календарное время (т. е. время, прошедшее после определенной даты, - обычно после 0 ч 00 мин 00 с GMT 1-го января 1970 г. - примеч. ред.) или -1, если время не известно. Если tp не равно NULL, то возвращаемое значение записывается и в *tp .
double difftime(time_t time2, time_t time1)
difftimeвозвращает разность time2 - time1 , выраженную в секундах.
time_t mktime(struct tm *tp)
mktimeпреобразует местное время, заданное структурой *tp , в календарное, выдавая его в том же виде, что и функция time . Компоненты будут иметь значения в указанных диапазонах. Функция mktime возвращает календарное время или -1, если оно не представимо.
Следующие четыре функции возвращают указатели на статические объекты, каждый из которых может быть изменен другими вызовами.
char *asctime(const struct tm *tp)
asctimeпереводит время в структуре *tp в строку вида
Sun Jan 3 15:14:13 1988\n\0
char *ctime(const time_t *tp)
ctimeпереводит календарное время в местное, что эквивалентно выполнению asctime(localtime(tp))
struct tm *gmtime(const time_t *tp)
gmtimeпереводит календарное время во Всемирное координированное время (Coordinated Universal Time - UTC). Выдаст NULL, если UTC не известно. Имя этой функции, gmtime , происходит от Greenwich Mean Time (среднее время по Гринвичскому меридиану).
struct tm *localtime(const time_t *tp)
localtimeпереводит календарное время *tp в местное.
size_t strftime(char *s, size_t smax, const char *fmt, const struct tm *tp)
strftimeформатирует информацию о дате и времени из *tp в строку s согласно формату fmt , который имеет много общих черт с форматом, задаваемым в функции printf . Обычные символы (включая и завершающий символ '\0') копируются в s . Каждая пара, состоящая из %и буквы, заменяется, как показано ниже, с использованием значений по форме, соответствующей местным традициям. В s размещается не более smax символов; strftime возвращает число символов без учета '\0' или нуль, если число сгенерированных символов больше smax .
%a |
сокращенное название дня недели |
%A |
полное название дня недели |
%b |
сокращенное название месяца |
%B |
полное название месяца |
%c |
местное представление даты и времени |
%d |
день месяца (01-31) |
%H |
час (24-часовое время) (00-23) |
%I |
час (12-часовое время) (01-12) |
%j |
день от начала года (001-366) |
%m |
месяц (01-12) |
%M |
минута (00-59) |
%p |
местное представление AM или РМ (до или после полудня) |
%S |
секунда (00-61) |
%U |
неделя от начала года (считая, что воскресенье - 1-й день недели) (00-53) |
%w |
день недели (0-6, номер воскресенья - 0) |
%W |
неделя от начала года (считая, что понедельник - 1-й день недели) (00-53) |
%x |
местное представление даты |
%X |
местное представление времени |
%y |
год без указания века (00-99) |
%Y |
год с указанием века |
%Z |
название временной зоны, если она есть |
%% |
% |
B11. Зависящие от реализации пределы: и
Заголовочный файл определяет константы для размеров целочисленных типов. Ниже перечислены минимальные приемлемые величины, но в конкретных реализациях могут использоваться и большие значения.
Читать дальше