The mktime() function converts the local time information in
the structtm specified by timeptr
into a calendar time (Coordinated Universal Time) with the same
encoding used by the
time() function.

The original values of the
tm_sec, tm_min, tm_hour,
tm_mday and tm_mon fields aren't restricted to the
ranges described for structtm.
If these fields aren't in their proper ranges, they're adjusted
so that they are. Values for the fields tm_wday and
tm_yday are computed after all the other fields have been adjusted.