当前位置: 首页 > news >正文

c++ 打印当前时间(精确到毫秒)

打印时间精确到毫秒好实现,但是那种对用户可读性不好,更适合开头记一次结尾记一次,打印中间减出来的程序运行时间。

但是因为一些情况,我开多线程开的不方便打印结束时间,同事跟我说那你把开始时间打印一下,结束他自己接受那边打印,最好精确到毫秒。那就要考虑可读性。

试了好多,最后选择用这个

#include <chrono>
#include <ctime>
#include <iostream>template <typename Duration>
void print_time(tm t, Duration fraction) {using namespace std::chrono;std::printf("[%04u-%02u-%02u %02u:%02u:%02u.%03u]\n", t.tm_year + 1900,t.tm_mon + 1, t.tm_mday, t.tm_hour, t.tm_min, t.tm_sec,static_cast<unsigned>(fraction / milliseconds(1)));// VS2013's library has a bug which may require you to replace// "fraction / milliseconds(1)" with// "duration_cast<milliseconds>(fraction).count()"
}int main() {using namespace std;using namespace std::chrono;system_clock::time_point now = system_clock::now();system_clock::duration tp = now.time_since_epoch();tp -= duration_cast<seconds>(tp);time_t tt = system_clock::to_time_t(now);print_time(*gmtime(&tt), tp);print_time(*localtime(&tt), tp);
}

具体原理我先放放,等有空了再研究
https://www.coder.work/article/798794

http://www.lryc.cn/news/108220.html

相关文章:

  • mapstruct 错误 java.lang.NoSuchMethodError: Ljava/lang/Double 错误
  • SpringBoot+AOP+Redission实战分布式锁
  • Linux系统---进程概念
  • ELK常用语法和线上问题排查
  • session-cookies 三个缓存 localStorage、sessionStorage、Cookies。
  • LA@行列式性质
  • 【java安全】原生反序列化利用链JDK7u21
  • [SQL智慧航行者] - SQL刷题规划
  • 概率论与数理统计:第一章:随机事件及其概率
  • elementUi重置Select选择器样式、option、deep、vue3、plus
  • jar命令的安装与使用
  • windows系统多线程多进程下应用函数CloseHandle的一些细节
  • 微服务——elasticsearch
  • paddlenlp:社交网络中多模态虚假媒体内容核查
  • Centos系统有哪些特点呢
  • 一文学会git常用命令和使用指南
  • [PyTorch][chapter 46][LSTM -1]
  • 寄存器详解(二)
  • Java AIO
  • java集合总结
  • list交并补差集合
  • 【微信小程序】父组件修改子组件数据或调用子组件方法
  • frp通过nginx映射multipart/x-mixed-replace; boundary=frame流媒体出外网访问
  • Kubernetes概述
  • Jmeter教程
  • 用Rust实现23种设计模式之建造者模式
  • 聚观早报 | 腾讯字节等企业驰援防汛救灾;新能源车7月销量单出炉
  • Crack:CAD Exchanger SDK 3.20 Web Toolkit 应用
  • 改造 ChatGPT-Next-Web 项目重新生成 Docker 镜像
  • git修改commit日志