#include  <time.h>
time_t mktime(struct tm  *time);
Функция mktime() возвращает календарный эквивалент времени, хранящийся в разделенном на компоненты виде в структуре, которая адресуется параметром-указателем time. Элементы tm_wday и tm_yday устанавливаются самой функцией, поэтому их не нужно определять при ее вызове.
Если mktime() не может представить информацию в виде допустимого календарного времени, возвращается -1.
Пример 1
Эта программа сообщает день недели 3 января 2005 года:
#include <time.h> 
#include <stdio.h>
int main(void)
{
struct tm t;
time_t  t_of_day;
t.tm_year = 2005-1900;
t.tm_mon = 0;
t.tm mday = 3;
t.tm_hour =0;   /* Час, минута, секунда не имеют значения, */
t.tm_min =0;  /* если только они не определяют переход */
t.tm_sec =1;   /* на новую дату */
t.tm_isdst = 0;
t_ of_day = mktime{&t); printf(ctime(&t_of_day)
return 0;
}
Здесь используются зависимые функции time(), ctime(), gmtime(), и asctime().