2023-4-11-chrono库用法学习

news2024/11/16 13:35:48


🍿*★,°*:.☆( ̄▽ ̄)/$:*.°★* 🍿

💥💥💥欢迎来到🤞汤姆🤞的csdn博文💥💥💥
💟💟喜欢的朋友可以关注一下,下次更新不迷路💟💟
😆😆😆私聊获取个人订阅号哦,欢迎订阅共同学习😆😆😆
💖💖💖💖可以加入大家庭群聊,一起学习天天有福利💖💖💖💖





🍬本文摘要

在这里插入图片描述

听说这个库计算出来的时间精度很高,我来试一试。


目录

  • 🍬本文摘要
  • 😉一、代码展示
  • 🐱‍🐉二、运行结果
  • 🧊文章总结



😉一、代码展示

#include <functional>
#include <iostream>
#include "chrono"


int main() {
    //num为分子 den为分母
    std::cout << std::chrono::milliseconds::period::num << std::endl;//输出1
    std::cout << std::chrono::milliseconds::period::den << std::endl;//输出1000  解释一下怎么来的  一秒除以一千就是一毫秒 所以分子是1 分母是1000
    //物理时间计时,steady_clock:是固定的时钟,相当于秒表。开始计时后,时间只会增长并且不能修改,适合用于记录程序耗时,high_resolution_clock:和时钟类 steady_clock 是等价的(是它的别名)。
    auto start = std::chrono::system_clock::now();
    for (int i = 0; i < 10000000; i++) {

    }
    auto end = std::chrono::system_clock::now();
    auto duration = std::chrono::duration_cast<std::chrono::microseconds>(end - start);
    std::cout << double(duration.count()) << std::endl;


    //定义毫秒级别的时钟类型
    typedef std::chrono::time_point<std::chrono::system_clock, std::chrono::milliseconds> microClock_type;
    //获取当前时间点,windows system_clock是100纳秒级别的(不同系统不一样,自己按照介绍的方法测试),所以要转换
    microClock_type tp = std::chrono::time_point_cast<std::chrono::milliseconds>(std::chrono::system_clock::now());
    //获取ctime格式的时间
    time_t tt = std::chrono::system_clock::to_time_t(tp);
    char _time[50];
    ctime_s(_time, sizeof(_time), &tt);
    std::cout << "now time is : " << _time;
    //计算距离1970-1-1,00:00的时间长度,因为当前时间点定义的精度为毫秒,所以输出的是毫秒
    std::cout << tp.time_since_epoch().count() << std::endl;
    //定义时间间隔
    std::chrono::duration<double, std::ratio<9, 7>> d1(3);
    std::chrono::duration<double, std::ratio<6, 5>> d2(1);
    // d1 和 d2 统一之后的时钟周期 对于分子 6,、9 最大公约数为 3,对于分母 7、5 最小公倍数为 35,因此推导出的时钟周期为 ratio<3,35>
    std::chrono::duration<double, std::ratio<3, 35>> d3 = d1 - d2;
    std::cout << d3.count() << " tick" << std::endl;
    // 新纪元1970.1.1时间
    std::chrono::system_clock::time_point epoch;

    std::chrono::duration<int, std::ratio<60*60*24>> day(1);
    // 新纪元1970.1.1时间 + 1天
    std::chrono::system_clock::time_point ppt(day);

    using dday = std::chrono::duration<int, std::ratio<60 * 60 * 24>>;
    // 新纪元1970.1.1时间 + 10天
    std::chrono::time_point<std::chrono::system_clock, dday> t(dday(10));

    // 系统当前时间
    std::chrono::system_clock::time_point today = std::chrono::system_clock::now();

    // 转换为time_t时间类型
    time_t tm = std::chrono::system_clock::to_time_t(today);
    std::cout << "今天的日期是:    " << ctime(&tm);

    time_t tm1 = std::chrono::system_clock::to_time_t(today+day);
    std::cout << "明天的日期是:    " << ctime(&tm1);

    time_t tm2 = std::chrono::system_clock::to_time_t(epoch);
    std::cout << "新纪元时间:      " << ctime(&tm2);

    time_t tm3 = std::chrono::system_clock::to_time_t(ppt);
    std::cout << "新纪元时间+1天:  " << ctime(&tm3);

    time_t tm4 = std::chrono::system_clock::to_time_t(t);
    std::cout << "新纪元时间+10天: " << ctime(&tm4);

    return 0;
}

🐱‍🐉二、运行结果

在这里插入图片描述


🧊文章总结

提示:这里对文章进行总结:

  简单的使用了解一下这个库怎么用。






更多好文推荐

🍸2021-4月Python 机器学习——中文新闻文本标题分类
🍹2021年4月-(计算机网络)小型校园网络模拟搭建,最全最准确版
🍺2022-10-31-基于用户的协同过滤推荐算法实现+MAE+RMSE
🍻2022-11-28-大数据可视化,特征维度大于50
🥂2023-3-9-一篇简短的文章把C++左右值关系讲的透透彻彻

上一篇
End
下一篇

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/410582.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

4.9、字节序

4.9、字节序1.简介2.字节序举例3.判断电脑存储方式代码1.简介 现代 CPU 的累加器一次都能装载&#xff08;至少&#xff09;4 字节&#xff08;这里考虑 32 位机&#xff09;&#xff0c;即一个整数。那么这 4字节在内存中排列的顺序将影响它被累加器装载成的整数的值&#xff…

vue element-ui 暗黑主题应用到若依框架

问题描述 基于若依框架的element-ui&#xff0c;将主题更换为暗黑主题。 问题分析 现有的element-ui框架提供的主题不满足自定义需求&#xff0c;大多数框架&#xff0c;包括若依提供了更换主题色的功能&#xff0c;但也只是更换的primary-color&#xff0c;其他组件的主题还…

算法小课堂(五)贪心算法

一、概述 贪心算法是一种常见的算法思想&#xff0c;用于解决优化问题。其基本思想是在每一步选择中都采取当前状态下最优的选择&#xff0c;从而希望能够获得全局最优解。 具体来说&#xff0c;贪心算法通常分为以下步骤&#xff1a; 定义问题的最优解&#xff0c;通常需要将…

【人生历程】我的创作纪念日

目录 与编程不得不说的爱恨情仇 在csdn的收获&#xff1a; 与csdn的日常 在平凡的日子偶然的成就感&#xff1a; 对未来的憧憬&#xff1a; 今天是2023.4.8号&#xff0c;早上的刚刚参加完蓝桥杯&#xff0c;下午看到csdn官方的活动&#xff0c;心血来潮写下以下内容&…

家政服务小程序实战开发教程018-用户注册

我们在教程的一开始的时候就讲解了用户注册的功能。当初的规划是一进来就让用户自主的选择角色&#xff0c;然后提交用户信息&#xff0c;如果未注册就跳转到注册界面。 随着教程的深入&#xff0c;又参考了很多线上的小程序&#xff0c;发现这种模式也有一定的缺点。因为作为…

Linux网络虚拟化2

Linux网络虚拟化2 今天我们接着上节课介绍的 Linux 网络知识&#xff0c;继续来学习它们在虚拟化网络方面的应用&#xff0c;从而为后续学习容器编排系统、理解各个容器是如何通过虚拟化网络来协同工作打好基础。 这一篇内容较多&#xff0c;可以重点看标红部分和标粗部分​。…

Ubuntu环境下minicom使用

1、minicom的安装 sudo apt-get install minicom2、minicom的配置 sudo minicom -s # 打开minicom配置界面3、配置serial port setup串口信息 使用上下箭头选择&#xff0c;enter进入。 按A修改Serial Device&#xff0c;修改之前可以用命令ls -la /dev/ttyUSB或者ls -la …

java 一文讲透集合框架(10万字博文)

目录 一、前言 二、集合简介 1.定义 : 2.集合与数组的区别 : 3.集合的好处 : 三、集合框架 1.单列集合 2.双列集合 Δ体系图&#xff08;重要&#xff09; 四、List集合详解&#xff08;三万余字&#xff09; 五、Set集合详解&#xff08;三万余字&#xff09; 六、增…

学习实践-Whisper语音识别模型实战(部署+运行)

1、Whisper内容简单介绍 OpenAI的语音识别模型Whisper&#xff0c;Whisper 是一个自动语音识别&#xff08;ASR&#xff0c;Automatic Speech Recognition&#xff09;系统&#xff0c;OpenAI 通过从网络上收集了 68 万小时的多语言&#xff08;98 种语言&#xff09;和多任务…

论文笔记|CVPR2023:Semantic Prompt for Few-Shot Image Recognition

论文地址&#xff1a;https://arxiv.org/pdf/2303.14123.pdf 这是一篇2023年发表在CVPR上的论文&#xff0c;论文题目是Semantic Prompt for Few-Shot Image Recognitio&#xff0c;即用于小样本图像识别的语义提示。 1 Motivation 第一&#xff0c;最近几项研究利用 语义信…

< Linux >:进程地址空间

目录 一、验证进程地址空间 二、感知进程地址空间的存在 一、验证进程地址空间 我们之前学的 C/C 程序地址空间是物理内存吗&#xff1f; 答&#xff1a;不是物理内存&#xff0c;甚至叫做程序地址空间都不太准确&#xff0c;应该叫做进程地址空间&#xff0c;因此根本就不是…

Notion插件,让你的页面有无限可能

// 你是否觉得notion的极简风格略为单调&#xff1f;是否想用notion实现更多的功能&#xff1f;是否想让notion更为便捷&#xff0c;更为多样化&#xff1f;那今天推荐的几款notion插件绝对不能错过&#xff0c;因为他们也确实不错。 // - ———byFutureForce DAO——— - 你…

把ChatGPT接入我的个人网站

效果图 详细内容和使用说明可以查看我的个人网站文章 把ChatGPT接入我的个人网站 献给有外网服务器的小伙伴 如果你本人已经有一台外网的服务器&#xff0c;并且页拥有一个OpenAI API Key&#xff0c;那么下面就可以参照我的教程来搭建一个自己的ChatGPT。 需要的环境 Cento…

让我们一起解密组播、IGMP、IGMP监听

前言&#xff1a;一直对组播这个概念迷迷糊糊&#xff0c;特别是交换机处理组播的方式&#xff0c;非常想搞懂但是懒癌发作。这几天终于耐心地看了下有关组播的资料&#xff0c;大致了解了一下同一广播域内组播的相关知识。组播占了计算机网络的一大部分&#xff0c;特别是组播…

ChatGPT 被大面积封号,到底发生什么了?

意大利数据保护机表示 OpenAI 公司不但非法收集大量意大利用户个人数据&#xff0c;没有设立检查 ChatGPT 用户年龄的机制。 ChatGPT 似乎正在遭遇一场滑铁卢。 3月31日&#xff0c; 大量用户在社交平台吐槽&#xff0c;自己花钱开通的 ChatGPT 账户已经无法登录&#xff0c;更…

举一反三学python(9)—excel基础

一、导论&#xff1a; 操作 excel 表格的Python 第三方库有openpyxl、xlrd、xlwt等&#xff0c;它们的功能都相同&#xff0c;就是语法有差异&#xff0c;今天我就带领大家学习用openpyxl模块操作实用的excel文件。 openpyxl模块为第三方库&#xff0c;首先要安装&#xff1a;p…

electron+vue3全家桶+vite项目搭建【九】集成vite-plugin-mock-server 模拟后端请求

文章目录引入1.引入依赖2.集成插件3.测试接口请求引入 后端接口出的太慢&#xff1f;问题不大&#xff0c;咱们可以借助vite-plugin-mock-server插件自己写接口&#xff0c;返回商量好的格式&#xff0c;后续联调直接切换环境即可 vite-plugin-mock-server官网 mock.js官网 …

uniapp人脸识别解决方案

APP端&#xff1a; 因为APP端无法使用uni的camera组件&#xff0c;最开始考虑使用内嵌webview的方式&#xff0c;通过原生dom调用video渲染画面然后通过canvas截图。但是此方案兼容性在ios几乎为0&#xff0c;如果app只考虑安卓端的话可以采用此方案。后面又想用live-pusher组件…

【Linux】vi编辑器——插入模式

目录 插入模式 光标移动命令 a A i I o O命令 a----------------在光标后附加文本 A----------------在文本行末附加文本 i------------------在光标前插入文本 I-------------------在文本开始插入文本 o----------------在光标下插入新行 O---------------在…

陶泓达:4.11黄金原油白银最新走势分析及操作策略!

黄金行情走势分析&#xff1a;   周一(4月10日)&#xff0c;国际金价一度跌约1%&#xff0c;重回2000美元干口下方。此前公布的美国3月非农就业数据显示劳动力市场吃紧&#xff0c;并提高了美联储5月再次加息的预期。金属公司MKS PAMP在一份报告中表示&#xff1a;“金价自20…