编程学习
C++11 chrono时间日期库
00 分钟
2023-7-11
2023-11-23
type
status
date
slug
summary
tags
category
icon
password
Email
文章首发于我的个人博客:欢迎大佬们来逛逛
 
c++11中新增了一个<chrono>库用于表示时间和日期。

chrono

chrono中有三个时钟:
  • system_clock:获取系统时间,但是这个时间是可以随着你的修改而改变的。
  • steady_clock:一个稳定的时间,它不像系统时间一样可以被修改
  • high_resolution_clock:是steady_clock的别名

时间点

time_point类型。
  • now:获取当前时间,获取的是一个时间点time_point
  • to_time_t:转换为time_t类型
  • ctime:转换为可读时间。
notion image

时间段

duration表示一个时间段。
以下可以计算程序片段的执行时间
  • duration_cast<T>(time):将时间time(是一个duration类型),转换为 T 类型表示的时间。
    • T:milliseconds 毫秒
    • T:seconds 秒
  • count:获取时间
notion image

时间间隔

使用duration来表示一个时间间隔。
  • count:分别获取他们所具有的时间。
可以利用这个程序来进行sleep效果。

时间格式化输出

方法一:
  • ctime:传统方式将一个time_t类型的时间戳转换为一个读取的string表示的时间。
方法二:
  • tm:时间类型,将时间戳使用 localtime 转换而来,
  • put_time:接受一个tm的指针,可以进行指定格式的输出时间。
方法三:其实就是方法二,只不过在大多数情况下我们需要先保存一下时间
  • stringstream:在<sstream> 库中,用于格式化字符串流
  • 重定向到ss中,实现保存,然后转换为c_str即可输出。
 
 
notion image

参考:

评论
  • Twikoo
  • Valine