c/c++获取时间和计算时间差的几种方法总结 | 您所在的位置:网站首页 › 时间精确到秒数 › c/c++获取时间和计算时间差的几种方法总结 |
一、标准C和C++都可用 1、获取时间用time_t time( time_t * timer ),计算时间差使用double difftime( time_t timer1, time_t timer0 )。 精确到秒。 测试程序如下: [c-sharp] view plain copy #include #include int main() { time_t start ,end ; double cost; time(&start); sleep(1); time(&end); cost=difftime(end,start); printf("%f/n",cost); return 0; }本程序在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秒。 测试程序如下: [c-sharp] view plain copy #include #include int main() { double start,end,cost; start=clock(); sleep(1); end=clock(); cost=end-start; printf("%f/n",cost); return 0; }二、C++中(此处针对windows环境,标准c中则linux和windows都可以) 1、GetTickCount() 调用函数需包含windows.h。得到的是系统运行的时间 精确到毫秒,测试程序如下: [c-sharp] view plain copy #include #include using namespace std; int main() { double start = GetTickCount(); Sleep(1000); double end=GetTickCount(); cout |
CopyRight 2018-2019 实验室设备网 版权所有 |