C++获取当前毫秒数

在 C++11 中,可以使用 <chrono> 头文件中的 std::chrono::system_clock 类来获取当前时间戳。它提供了多种精度和分辨率的时钟类型,其中最常用的是系统时钟。

以下是一个示例程序,演示如何使用 std::chrono::system_clock 类获取当前毫秒数:

cpp复制代码
#include <iostream>
#include <chrono>

int main() {
  // 获取当前时间戳
  auto now = std::chrono::system_clock::now();

  // 将时间戳转换为毫秒数
  auto now_ms = std::chrono::time_point_cast<std::chrono::milliseconds>(now);
  auto value = now_ms.time_since_epoch().count();

  // 输出毫秒数
  std::cout << "Milliseconds since epoch: " << value << std::endl;

  return 0;
}

在上面的示例程序中,首先使用 std::chrono::system_clock::now() 函数获取当前时间戳,然后使用 std::chrono::time_point_cast 函数将时间戳转换为毫秒级别的时间点,并调用 count 方法获取其值。

需要注意的是,count() 方法返回的是一个整数类型的计数器值,表示自 Unix 纪元以来经过的时间单位数。如果要输出其他时间单位,可以使用相应的 time_pointduration 类型及其成员函数进行转换。

posted @ 2023-06-27 16:38  朴实小码哥  阅读(3963)  评论(0编辑  收藏  举报