如何在 C++ 中获取毫秒数?

How to get milliseconds in c++?

首先我不想使用#include <ctime>time(0);的时间(0);与ctime。我想要的是如果说时间是 10:13:40:23 AM 我会得到 23 的值。我在网上看了一会儿,除了 ctime 找不到任何东西,但 ctime 是以毫秒为单位的系统时间,这意味着价值真的很高。另一个例子是 12:56:30:192 PM,我会得到 192 的值。感谢您的帮助:)。

使用 C++ 11,使用 std::chrono 库。

#include <iostream>
#include <chrono> 

int main()
{

    auto now = std::chrono::system_clock::now();

    std::chrono::milliseconds ms_since_epoch = std::chrono::duration_cast< std::chrono::milliseconds >(now.time_since_epoch());
    std::chrono::seconds seconds_since_epoch = std::chrono::duration_cast< std::chrono::seconds >(now.time_since_epoch());

    std::cout << (ms_since_epoch - seconds_since_epoch).count() << std::endl;

    return 0;
}

考虑到秒数,模 1000 与减去秒数的效果相同。 无论如何,鉴于纪元是规范的(秒为 00,毫秒为 000),这部分确实是当前时刻的实际毫秒测量值。