- 0
- 0
- 约6.36千字
- 约 5页
- 2021-10-13 发布于福建
- 举报
c/c++ 在 windows 下获取时间和计算时间差的几种方法总结
一、标准 C 和 C++ 都可用
1 、获取时间用 time_t time ( time_t * timer ) ,计算时间差使用 double
difftime( time_t timer1, time_t timer0 ) 。 精确到秒。
测试程序如下:
1. #include time.h
2. #include stdio.h
3. int main()
4. {
5. time_t start ,end ;
6. double cost;
7. time(start);
8. sleep(1);
9. time(end);
10. cost=difftime(end,start);
11. printf( %f\n ,cost);
12. return 0;
13. }
本程序在 fedora9 测试通过。
关于代码中的 sleep 函数,需要注意的是:
1 )在 windows 下,为 Sleep() 函数,且需包含 windows.h
2 )关于 sleep 中的数,在 Windows 和 Linux 下 1000 代表的含义并不相同, Windows
下的表示 1000 毫秒,也就是 1 秒钟; Linux 下表示 1000 秒, Linux 下使用毫秒级别的
函数可以使用 usleep 。
2 、clock_t clock()
clock() 获取的是计算机启动后的时间间隔 ,得到的是 CPU 时间 ,精确到
1/CLOCKS_PER_SEC 秒。
测试程序如下:
1. #include time.h
2. #include stdio.h
3. int main()
4. {
5. double start,end,cost;
6. start=clock();
7. sleep(1);
8. end=clock();
9. cost=end-start;
10. printf( %f\n ,cost);
11. return 0;
12. }
二、 C++ 中(此处针对 windows 环境,标准 c 中则 linux 和 windows 都可以)
1 、GetTickCount()
调用函数需包含 windows.h 。得到的是系统运行的时间 精确到毫秒, 测试程序如下:
1. #include iostream
2. #include windows.h
3. using namespace std;
4. int main()
5. {
6. double start = GetTickCount();
7. Sleep(1000);
8. double end=GetTickCount();
9. cout GetTickCount: end-s
您可能关注的文档
- CWI考试试题汇编[收集].pdf
- Cwnd全部函数[收集].pdf
- CX20106A的引脚注释[收集].pdf
- cxf_axis_xfire客户端调用的几种方法[收集].pdf
- CwRsync4.0.2安装配置文档[整理].pdf
- cygwin基本命令[借鉴].pdf
- cygwin安装图解[归纳].pdf
- cygwin常用命令[定义].pdf
- C_C语言编码规范[定义].pdf
- C_多线程函数如何传参数和返回值[文].pdf
- 2025年全国演出经纪人员资格认定考试试卷带答案(研优卷).docx
- 2025年全国演出经纪人员资格认定考试试卷完整版.docx
- 2025年全国演出经纪人员资格认定考试试题库及完整答案.docx
- 2025年全国演出经纪人员资格认定考试试卷完美版.docx
- 2025年全国演出经纪人员资格认定考试试卷含答案(实用).docx
- 2025年全国演出经纪人员资格认定考试试卷及答案(各地真题).docx
- 2025年下半年内江市部分事业单位公开考试招聘工作人员(240人)备考题库附答案.docx
- 2025年全国演出经纪人员资格认定考试试卷及答案1套.docx
- 2025年下半年四川成都市郫都区面向社会引进公共类事业单位人员2人备考题库最新.docx
- 2025年下半年内江市部分事业单位公开考试招聘工作人员(240人)备考题库附答案.docx
原创力文档

文档评论(0)