- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C常见程序计时方法
目录
TOC \o 1-3 \h \z \u HYPERLINK \l _Toc312659130 1.常规计时 PAGEREF _Toc312659130 \h 1
HYPERLINK \l _Toc312659131 1.1 time() PAGEREF _Toc312659131 \h 1
HYPERLINK \l _Toc312659132 1.2 GetTickCount PAGEREF _Toc312659132 \h 3
HYPERLINK \l _Toc312659133 2.使用CPU时间戳进行高精度计时 PAGEREF _Toc312659133 \h 4
HYPERLINK \l _Toc312659134 3.精确获取时间QueryPerformanceCounter PAGEREF _Toc312659134 \h 7
1.常规计时
1.1 time()
C语言中time()函数
函数简介
函数名: time
头文件:time.h
函数原型:time_t time(time_t * timer)
功能: 获取当前的系统时间,返回的结果是一个time_t类型,其实就是一个大整数,其值表示从CUT(Coordinated Universal Time)时间1970年1月1日00:00:00(称为UNIX系统的Epoch时间)到当前时刻的秒数。然后调用localtime将time_t所表示的CUT时间转换为本地时间(我们是+8区,比CUT多8个小时)并转成struct tm类型,该类型的各数据成员分别表示年月日时分秒。
补充说明:time函数的原型也可以理解为 long time(long *tloc),即返回一个long型整数。因为在time.h这个头文件中time_t实际上就是:
#ifndef _TIME_T_DEFINED
typedef long time_t; /* time value */
#define _TIME_T_DEFINED /* avoid multiple defines of time_t */
#endif
即long。
函数应用举例
程序例1:
time函数获得日历时间。日历时间,是用“从一个标准时间点到此时的时间经过的秒数”来表示的时间。这个标准时间点对不同的 HYPERLINK /view/487018.htm \t _blank 编译器来说会有所不同,但对一个 HYPERLINK /view/3279760.htm \t _blank 编译系统来说,这个标准时间点是不变的,该编译系统中的时间对应的日历时间都通过该标准时间点来衡量,所以可以说日历时间是“相对时间”,但是无论你在哪一个时区,在同一时刻对同一个标准时间点来说,日历时间都是一样的。
#include time.h
#include stdio.h
#include HYPERLINK /view/1623344.htm \t _blank dos.h
int main(void)
{
time_t t; t = time(NULL);
printf(The number of seconds since January 1, 1970 is %ld,t);
return 0;
}
程序例2:
//time函数也常用于随机数的生成,用日历时间作为种子。
#include stdio.h
#include time.h
#include HYPERLINK /view/1347718.htm \t _blank stdlib.h
int main(void)
{
int i;
HYPERLINK /view/1458234.htm \t _blank srand((unsigned) time(NULL));
printf(ten random numbers from 0 to 99\n\n);
for(i=0;i10;i++)
{
printf(%d\n,rand()%100);
}
return 0;
}
程序例3:
用time()函数结合其他函数(如:localtime、 HYPERLINK /view/1117320.htm \t _blank gmtime、 HYPERLINK /view/653923.htm \t _blank asctime、 HYPERLINK /view/654014.htm \t
您可能关注的文档
最近下载
- 通桥(2017)2101-Ⅱ时速160公里客货共线铁路预制后张法简支T梁24m.pdf
- 胡壮麟《语言学教程》(第5版)@第七章@复习笔记.pdf
- 2018年中级经济师考试《保险专业知识与实务》电子书.pdf VIP
- 公路收费站(所)风险管控清单.docx VIP
- 君正化工杜邦安全管理理念实施方案.pptx
- 在线网课学习课堂《空间句法与数据化设计——环境行为数据分析及设计应用》单元测试考核答案.docx
- 全面从严治党主体责任约谈资料汇编.docx VIP
- 2024年华为认证HCIA-5G(H35-660)考试题库(附答案).pdf VIP
- 《Web 程序设计》说课.ppt
- 数字经济-第1篇.pptx
文档评论(0)