gpt4 book ai didi

C++ - 我们如何在 Linux 中获得毫秒时间戳?

转载 作者:太空狗 更新时间:2023-10-29 23:36:58 26 4
gpt4 key购买 nike

如何转换std::chrono::monotonic_clock::now()到毫秒并将其转换为长?

从 chrono 使用 steady_clock 或 high_resolution_clock 也是一样的。我看过std::chrono::duration_cast<std::chrono::milliseconds>但我只想要当前时间戳而不是任何持续时间间隔。

最佳答案

当前时间戳是相对于某个时间点定义的(因此它是一个持续时间)。例如,获取相对于 Epoch(1970 年 1 月 1 日,在 Unix 中)开始的时间戳是“典型的”。您可以使用 time_since_epoch() 来做到这一点:

namespace chr = std::chrono;

chr::time_point<chr::steady_clock> tp = chr::steady_clock::now();
std::cout << "hours since epoch: "
<< chr::duration_cast<chr::hours>(tp.time_since_epoch()).count()
<< '\n';

要获取以毫秒为单位的值,您需要将其转换为 std::chrono::milliseconds

关于C++ - 我们如何在 Linux 中获得毫秒时间戳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11102282/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com