---------------------

本文来自 Fuko_Ibuki 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/qq_31908675/article/details/81233816?utm_source=copy

ctime

时间!关于日期和时间的计算在信息学竞赛中非常重要.
这一次我来介绍一下ctime中两个神奇的函数.
:clock
这个东西可以算代码运行的时间.用法是这样的: clock_t nowtime=clock();
...
cout<<clock()-nowtime<<endl; 这时候输出了一个数字,单位是毫秒,表示运行的时间.
这样就可以判断你是不是tletletle了.
爆搜到时限之后直接输出−−-1其实也是用的这种方法.
.difftime
这个函数用来算两个时间之间的时间差.
用法?
首先在c++中,时间是由一个叫tmtmtm的结构体储存的.
这个结构体有9个成员. struct tm{
int tm_sec;//秒
int tm_min;//分钟
int tm_hour;//小时
int tm_mday;//(这个月的)哪一天
int tm_mon;//月
int tm_year;//年(这个年是以1900作为起始时间的,设置的时候要减去1900)
int tm_wday;//星期几,0表示星期天
int tm_yday;//今年从1月1日开始的第几天
int tm_isdst;//是否是夏令时
}; 然后有一个函数mktime(&t) 可以将结构体表示的时间变为秒表示的时间.
接下来用difftime函数可以算出两个日期之间差的秒数,除以864008640086400就是天数.
举例计算从今年7月22日(谁的生日?) 到今天 (7月27日) 的天数.应该是5天. int main()
{
tm t1= {},t2= {};
t1.tm_year=-,t1.tm_mon=,t1.tm_mday=;
t2.tm_year=-,t2.tm_mon=,t2.tm_mday=;
cout<<difftime(mktime(&t2),mktime(&t1))/<<endl;
}//输出51234567 要注意的点:
.年份从1900开始,月份以1月为准,要减掉1;
.计算的时间的范围在[,]之间.别过界了.
这样我们再也不怕询问时间的问题了!

关于Ctime库的更多相关文章

  1. (原创)c++11中的日期和时间库

    c++11提供了日期时间相关的库chrono,通过chrono相关的库我们可以很方便的处理日期和时间.c++11还提供了字符串的宽窄转换功能,也提供了字符串和数字的相互转换的库.有了这些库提供的便利的 ...

  2. c++11时间相关库(chrono)

    以下整理自:https://www.2cto.com/kf/201404/290706.html chrono 库主要包含了三种类型:时间间隔 Duration.时钟 Clocks 和时间点 Time ...

  3. c++获取随机数

    方法一: 使用 rand 函数可以获取,如下. 随机数大小是在0到RAND_MAX,值为2147483647,它是在stdlib中定义的,如果我们希望在某个范围内,可以使用 % 结合 / 来实现. 但 ...

  4. c++11 处理时间和日期

    c++11提供了日期时间相关的库 chrono,通过chrono库可以很方便的处理日期和时间. 1. 记录时间长度的duration template<class Rep, class Peri ...

  5. 对拍(C++)

    对拍(C++) 对拍是什么 ​ 众所周知,当我们正在考试敲代码的时候,每一道题,都会有某种正解能拿到满分:当我们想不出正解时,我们往往可以打暴力代码来骗分. ​ 但是,当我们有思路写正解,但又担心自己 ...

  6. [C++STDlib基础]关于日期时间的操作——C++标准库头文件<ctime>

    总结 /* A.头文件<ctime> #if _GLOBAL_USING && !defined(RC_INVOKED) _STD_BEGIN 1.四个数据类型 using ...

  7. 时间相关库<ctime>解析

    原创作品,转载请注明来源:http://www.cnblogs.com/shrimp-can/p/5649487.html 一.定义的类型 1.clock_t:时钟类型 2.size_t:unsign ...

  8. Standard C 语言标准函数库介绍

    全面巩固所知所学,往精通方向迈进! Standard C 语言标准函数库速查 (Cheat Sheet) from:http://ganquan.info/standard-c/function/ C ...

  9. 1.1. 如何使用XproerUI库

    项目类型:MFC   XproerUI结构: 3rd                    第三方库目录   cximage     dll                编译的DLL目录   pug ...

随机推荐

  1. 自制操作系统Antz(4)——进入保护模式 (下) 实现内核并从硬盘载入

    Antz系统更新地址: https://www.cnblogs.com/LexMoon/category/1262287.html Linux内核源码分析地址:https://www.cnblogs. ...

  2. vijos 1605 双栈排序 - 贪心 - 二分图

    题目传送门 传送门I 传送门II 题目大意 双栈排序,问最小字典序操作序列. 不能发现两个数$a_{j}, a_{k}\ \ (j < k)$不能放在同一个栈的充分必要条件时存在一个$i$使得$ ...

  3. Codeforces 333E Summer Earnings - bitset

    题目传送门 传送门I 传送门II 传送门III 题目大意 给定平面上的$n$个点,以三个不同点为圆心画圆,使得圆两两没有公共部分(相切不算),问最大的半径. 显然答案是三点间任意两点之间的距离的最小值 ...

  4. Guitar Pro特殊符号讲解之附点音符

    今天要讲解Guitar Pro里附点音符的作用,附点音符也是大家在编曲做谱的时候,经常需要使用的一个符号,它在Guitar Pro分为附点和双附点. 附点:记在音符符头右边的圆点,用以增长音符的时值. ...

  5. 在myeclipse中使用log4j记录日志

    1.从官方网站下载 jakarta-log4j-1.2.17.tar.gz http://logging.apache.org/log4j/1.2/download.html 2.在eclipse中将 ...

  6. PSR4规范

    定义类名规则: 完全限定类名必须有一个顶级命名空间(Vendor Name): 完全限定类名可以有多个子命名空间: 完全限定类名应该有一个终止类名: 下划线在完全限定类名中是没有特殊含义的: 字母在完 ...

  7. windows 添加开始菜单

    C:\Users\用户名(为你设置的电脑名称)\AppData\Roaming\Microsoft\Windows\Start Menu C:\ProgramData\Microsoft\Window ...

  8. 启动xampp出错,Port 80 in use by "Unable to open process" with PID 4!

    启动xampp出错,Port 80 in use by "Unable to open process" with PID 4! 环境:windows10 80端口被PID为4的应 ...

  9. MySQL5.5安装教程

                                          登录MySQL:mysql -uroot -p密码 退出MySQL:exit | quit 查看数据库:show datab ...

  10. mysql(5.5)安装后忘记密码

    查看mysql安装的路径