Time.h
Заголовні файли C |
---|
time.h — заголовний файл стандартної бібліотеки мови програмування С, що містить типи і функції для роботи з датою й часом.
Вступ
Деякі функції можуть працювати з місцевим часом, який може відрізнятися від календарного, наприклад у зв'язку з часовими поясами. Визначено арифметичні типи clock_t і time_t для представлення часу, а структура 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 (в Windows), з 1970 (в Unix) |
int tm_wday;
|
Дні з неділі (0,6) |
int tm_yday;
|
Дні з першого січня (0,365) |
int tm_isdst;
|
Ознака літнього часу |
Поле tm_isdst має позитивне значення, якщо активний режим літнього часу, нуль в іншому випадку і негативне значення, якщо інформація про сезон часу недоступна / невідома.
Основні функції
clock_t clock (void)
- Повертає час, вимірюваний процесором в тактах від початку виконання програми, або −1, якщо воно не відомо. Перерахунок цього часу в секунди виконується за формулою clock
- () / CLOCKS_PER_SEC.
time_t time (time_t * tp)
- Повертає поточне календарний час або −1, якщо цей час не відомо. Якщо покажчик tp не дорівнює NULL, то повертається значення записується також і в * tp.
double difftime (time_t time2, time_t time1)
- Повертає різницю time2-time1, виражену в секундах.
time_t mktime (struct tm * tp)
- Перетворює місцевий час, заданий структурою * tp, в календарне і повертає його в тому ж вигляді, що і функція time (). Компоненти структури будуть мати значення в зазначених вище діапазонах. Функція повертає календарне час або −1, якщо воно не представимо.
char * asctime (const struct tm * tp)
- Перетворює час із структури * tp в рядок виду «Sun Jan 3 15:14:13 1988 \ n \ 0»
Константи
CLOCKS_PER_SEC
- Визначає кількість тактів системного годинника в секунду. Використовується для перерахунку величини, що повертається функцією clock (), в секунди.
CLK_PER_SEC
- Альтернативне ім'я константи CLOCKS_PER_SEC, що використовується в деяких бібліотеках.
CLK_TCK
- макрос для константи CLOCKS_PER_SEC, вийшов з ужитку.
Типи даних
clock_t
- Повертається функцією clock (). Зазвичай визначений як int або long int.
time_t
- Повертається функцією time (). Зазвичай визначений як int або long int.
struct tm
- Нелінійне, дискретне календарне уявлення часу.
Приклад використання
Виведення на екран поточного часу.
# include <stdio.h>
# include <time.h>
int main(void)
{
const time_t timer = time(NULL);
printf("%s\n", ctime(&timer));
return 0;
}
Посилання
- time.h [Архівовано 9 лютого 2012 у Wayback Machine.] основні визначення, The Single UNIX® Specification, випуск 7 от The Open Group (англ.)