mktime()
#include <time.h> time_t mktime(struct tm *time);
Описание
Возвращает эквивалент календарного времени на основе времени, заданного в поэлементном виде и хранимого в структуре, которая адресуется параметром time
Функция mktime() возвращает эквивалент календарного времени на основе времени, заданного в поэлементном виде и хранимого в структуре, которая адресуется параметром time. Элементы tm_wday и tm_yday устанавливаются самой функцией, поэтому их не нужно определять при ее вызове. Если функция mktime() не в состоянии представить информацию в виде допустимого календарного времени, возвращается значение -1. Совет программистуФункция mktime() особенно полезна, когда нужно узнать, на какой день недели выпадает конкретная дата. Например, каким днем недели будет 12 января 2012 года? Чтобы выяснить это, вызовите функцию mktime() с этой датой, а затем(после выполнения функции) обратитесь к члену tm_wday структуры tm. Он будет содержать день недели. Этот метод демонстрируется следующей программой. /* Определение дня недели для даты "12 января 2012 года" (January 12, 2012). */ #include <stdio.h> #include <time.h> char day[][20] = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" }; int main(void) { struct tm t; t.tm_mday = 12; t.tm_mon = 0; t.tm_year = 112; t.tm_hour = 0; t.tm_min = 0; t.tm_sec = 0; t.tm_isdst = 0; mktime(&t); //получаем день недели printf("день недели %s.\n", day[t.tm_wday]); return 0, } При выполнении этой программы функция mktime() автоматически вычисляет день недели, которым в данном случае является вторник(Thursday). Поскольку значение, возвращаемое функцией mktime(), не используется оно попросту игнорируется. |
Нет комментариев. Оставить комментарий: |