The following code example is taken from the book
C++20 - The Complete Guide
by Nicolai M. Josuttis,
Leanpub, 2021
The code is licensed under a
Creative Commons Attribution 4.0 International License.
// raw code
#include <iostream>
#include <chrono>
int main()
{
using namespace std::literals;
namespace chr = std::chrono;
auto tpUtc = chr::clock_cast<chr::utc_clock>(chr::sys_days{2017y/1/1} - 1000ms);
for (auto end = tpUtc + 2500ms; tpUtc <= end; tpUtc += 200ms) {
auto tpSys = chr::clock_cast<chr::system_clock>(tpUtc);
auto tpGps = chr::clock_cast<chr::gps_clock>(tpUtc);
auto tpTai = chr::clock_cast<chr::tai_clock>(tpUtc);
std::cout << std::format("{:%F %T} SYS ", tpSys);
std::cout << std::format("{:%F %T %Z} ", tpUtc);
std::cout << std::format("{:%F %T %Z} ", tpGps);
std::cout << std::format("{:%F %T %Z}\n", tpTai);
}
}