Стандартная библиотека языка программирования С |
|
time.h — заголовочный файл стандартной библиотеки языка программирования C, содержащий типы и функции для работы с датой и временем.
Некоторые функции могут работать с местным временем, которое может отличаться от календарного, например в связи с часовыми поясами. Определены арифметические типы clock_t
и time_t
для представления времени, а структура struct tm
содержит компоненты календарного времени.
Имя | Описание |
---|---|
int tm_sec; |
Секунды от начала минуты - [0,60][1] |
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; |
Дни с первого января - [0,365] |
int tm_isdst; |
Признак летнего времени |
Поле tm_isdst
имеет положительное значение, если активен режим летнего времени, нуль в противном случае и отрицательное значение, если информация о сезоне времени недоступна/неизвестна.
clock_t clock(void)
clock_t
, или -1, если оно неизвестно. Размерность возвращаемого значения определяется при помощи константы CLOCKS_PER_SEC
, которая задаёт количество единиц значения времени в одной секунде.[2] Начало отсчёта времени, возвращаемого функцией clock()
, не обязательно должно совпадать с началом выполнения программы, а промежутки времени, измеренные при помощи данной функции, могут не соответствовать аналогичным промежуткам календарного времени, в зависимости от ресурсов, выделяемых программе операционной системой.[3]time_t time(time_t *tp)
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()
, в секунды. [источник не указан 1589 дней]CLK_PER_SEC
CLOCKS_PER_SEC
, используемое в некоторых библиотеках.CLK_TCK
CLOCKS_PER_SEC
. [источник не указан 1589 дней]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;
}
Visual Studio 2010
#include <stdio.h>
#include <time.h>
int main(int argc, char** argv[])
{
time_t t = time(NULL);
struct tm* aTm = localtime(&t);
printf("%04d/%02d/%02d %02d:%02d:%02d \n",aTm->tm_year+1900, aTm->tm_mon+1, aTm->tm_mday, aTm->tm_hour, aTm->tm_min, aTm->tm_sec);
getchar();
return 0;
}
Запись в файл
#include <stdio.h>
#include <time.h>
int main(int argc, char** argv[])
{
time_t t = time(NULL);
struct tm* aTm = localtime(&t);
FILE* hFILE = fopen("test", "w");
fprintf(hFILE,"%04d/%02d/%02d %02d:%02d:%02d",aTm->tm_year+1900, aTm->tm_mon+1, aTm->tm_mday, aTm->tm_hour, aTm->tm_min, aTm->tm_sec);
return 0;
}
time.h
— основные определения, The Single UNIX® Specification, выпуск 7 от The Open Group (англ.)Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .