FreeBSD Manual Pages
std::mktime(3) C++ Standard Libary std::mktime(3) NAME std::mktime - std::mktime Synopsis Defined in header <ctime> std::time_t mktime( std::tm* time ); Converts local calendar time to a time since epoch as a time_t ob- ject. time->tm_wday and time->tm_yday are ignored. The values in time are permitted to be outside their normal ranges. A negative value of time->tm_isdst causes mktime to attempt to de- termine if Daylight Saving Time was in effect. If the conversion is successful, the time object is modified. All fields of time are updated to fit their proper ranges. time->tm_wday and time->tm_yday are recalculated using information available in other fields. Parameters time - pointer to a std::tm object specifying local calendar time to convert Return value Time since epoch as a std::time_t object on success or -1 if time cannot be represented as a std::time_t object. Notes If the std::tm object was obtained from std::get_time or the POSIX strptime, the value of tm_isdst is indeterminate, and needs to be set explicitly before calling mktime. Example Construct a local time explicitly. // Run this code #include <iostream> #include <sstream> #include <iomanip> #include <ctime> int main() { setenv("TZ", "/usr/share/zoneinfo/America/Los_Angeles", 1); // POSIX-specific std::tm tm{}; // zero initialise tm.tm_year = 2020-1900; // 2020 tm.tm_mon = 2-1; // February tm.tm_mday = 15; // 15th tm.tm_hour = 10; tm.tm_min = 15; tm.tm_isdst = 0; // Not daylight saving std::time_t t = std::mktime(&tm); std::tm local = *std::localtime(&t); std::cout << "local: " << std::put_time(&local, "%c %Z") << '\n'; } Possible output: local: Sat Feb 15 10:15:00 2020 PST See also localtime converts time since epoch to calendar time expressed as local time (function) http://cppreference.com 2022.07.31 std::mktime(3)
NAME | Synopsis | Parameters | Return value | Notes | Example | Possible output: | See also
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::mktime&sektion=3&manpath=FreeBSD+Ports+15.0>
