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 основні визначення, The Single UNIX® Specification, випуск 7 от The Open Group (англ.)