Scroll to navigation

std::chrono::utc_clock(3) C++ Standard Libary std::chrono::utc_clock(3)


std::chrono::utc_clock - std::chrono::utc_clock


Defined in header <chrono>
class utc_clock; (since C++20)

The clock std::chrono::utc_clock is a Clock that represents Coordinated Universal
Time (UTC). It measures time since 00:00:00 UTC, Thursday, 1 January 1970, including
leap seconds.

utc_clock meets the Clock requirements. It does not meet the TrivialClock
requirements unless the implementation can guarantee that now() does not throw an

Time point family

Defined in namespace std::chrono
template<class Duration>
using utc_time = std::chrono::time_point<std::chrono::utc_clock, (since C++20)
using utc_seconds = utc_time<std::chrono::seconds>; (since C++20)

operator<<(std::chrono::utc_time) performs stream output on a utc_time
(C++20) (function template)
from_stream(std::chrono::utc_time) parses a utc_time from a stream according to
(C++20) the provided format
(function template)
std::formatter<std::chrono::utc_time> specialization of std::formatter that formats
(C++20) a utc_time according to the provided format
(class template specialization)

Member types

Member type Definition
rep signed arithmetic type representing the number of ticks in the clock's
period a std::ratio type representing the tick period of the clock, in seconds
duration std::chrono::duration<rep, period>, capable of representing negative
time_point std::chrono::time_point<std::chrono::utc_clock>

Member constants

true if the time between ticks is always constant, i.e.
constexpr bool is_steady calls to now() return values that increase monotonically
[static] even in case of some external clock adjustment, otherwise
(public static member constant)

Member functions

now returns a std::chrono::time_point representing the current point in time
[static] (public static member function)
to_sys converts utc_time to sys_time
[static] (public static member function)
from_sys converts sys_time to utc_time
[static] (public static member function)

Non-member functions

get_leap_second_info obtains leap second insertion information from a utc_time
(C++20) object
(function template)

Helper classes

leap_second_info leap second insertion information
(C++20) (class)


The official UTC epoch is 1 January 1972. utc_clock uses 1 January 1970 instead to
be consistent with std::chrono::system_clock.