Функция Преобразует время к календарному времени.
Синтаксис #include
time_t mktime(struct tm *t);
Файл, содержащий time.h
прототип
Описание Преобразует время из структуры, на которую указы-
вает параметр t, в календарное время в формат,
используемый функцией time. Исходные значение по-
лей tm_sec, tm_min, tm_hour, tm_mday и tm_mon не
ограничены диапазонами, приведенными при описании
структуры tm. Если значение поля выходит за ука-
занные пределы, то оно приводится к нужному диа-
пазону. Значения для полей tm_wday и tm_yday вы-
числяются после приведения остальных значений.
Возвращаемое Смотри комментарии.
значение
Переносимость mktime поддерживается стандартом ANSI C.
Смотрите также localtimestrftimetime
Пример:
#include
#include
char *wday[] = {"Воскресенье","Понедельник","Вторник",
"Среда","Четверг","Пятница","Суббота",
"Неизвестен"};
int main(void)
{
struct tm time_check;
int year,month,day;
/* для нахождения дня недели, необходимо ввести
день, месяц и год */
printf("Год: ");
scanf("%d",&year);
printf("Месяц: ");
scanf("%d",&month);
printf("День: ");
scanf("%d",&day);
/* занести данные в структуру time_check */
time_check.tm_year = year -1900;
time_check.tm_mon = month - 1;
time_check.tm_mday = day;
time_check.tm_hour = 0;
time_check.tm_min = 0;
time_check.tm_sec = 0;
time_check.tm_isdst = -1;
/* для заполнения оставшихся полей вызвать mktime */
if(mktime(&time_check) == -1)
time_check.tm_wday = 7;
/* вывести день недели */
printf("Это был: %s\n",wday[time_check.tm_wday]);
return 0;
}