gpt4 book ai didi

c++ - 使用 C++ 获取 Unix 时间戳

转载 作者:IT老高 更新时间:2023-10-28 13:58:15 52 4
gpt4 key购买 nike

如何在 C++ 中获取 uint unix 时间戳?我用谷歌搜索了一下,似乎大多数方法都在寻找更复杂的方式来表示时间。我不能将它作为 uint 获取吗?

最佳答案

C++20 引入了保证 time_since_epoch与 UNIX 纪元相关,cppreference.com给出了一个我已经提炼到相关代码的例子,并改为以秒为单位而不是小时:

#include <iostream>
#include <chrono>

int main()
{
const auto p1 = std::chrono::system_clock::now();

std::cout << "seconds since epoch: "
<< std::chrono::duration_cast<std::chrono::seconds>(
p1.time_since_epoch()).count() << '\n';
}

使用 C++17 或更早版本,time()是最简单的函数 - 自 Epoch 以来的秒数,对于 Linux 和 UNIX 来说,这至少是 UNIX 纪元。 Linux manpage here .

上面链接的 cppreference 页面给出了 example :

#include <ctime>
#include <iostream>

int main()
{
std::time_t result = std::time(nullptr);
std::cout << std::asctime(std::localtime(&result))
<< result << " seconds since the Epoch\n";
}

关于c++ - 使用 C++ 获取 Unix 时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6012663/

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