CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник по функциям C/C++
mktime
mktime
Функция Преобразует время к календарному времени. Синтаксис #include<time.h> 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. Смотрите также localtime, strftime, time. Пример: #include<stdio.h> #include<time.h> 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; }