Thanks R.. for answering this:
What is the right way to convert into UNIX timestamp from the date and time in C/C++? – Stack Overflow
Posted by jpluimers on 2017/08/16
POSIX has a formula for exactly what you want:
http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html#tag_04_15 [WayBack]
tm_sec + tm_min*60 + tm_hour*3600 + tm_yday*86400 + (tm_year-70)*31536000 + ((tm_year-69)/4)*86400 - ((tm_year-1)/100)*86400 + ((tm_year+299)/400)*86400This works whenever you have a broken-down time in GMT, even if the underlying system’s
mktime, etc. functions do not use the same formattime_tas “Unix timestamps”.If your original time is in local time, you can use
mktimeandgmtimeto convert it to GMT using the system’s notion of timezone rules. If you want to apply your own timezone offset rules, just do that manually before using the above formula.
Source: What is the right way to convert into UNIX timestamp from the date and time in C/C++? – Stack Overflow [WayBack]
For testing and more examples: Epoch Converter – Unix Timestamp Converter [WayBack]
Hopefully this will help me getting better implementations for these:
- Monolithic function that requires splitting up: Useful Universal Date Converter function – MikroTik RouterOS [WayBack]
- Calculate Day of Week from Date – MikroTik RouterOS [WayBack]
–jeroen






Leave a comment