C++计算一个程序运行时间,精确到毫秒
2011-12-02 16:29 络绎5201314 | 分类:C/C++ | 浏览2107次
用clock_t声明两个变量start,finish;
start = clock()
//运行一个函数
finish = clock()
得到的 finish-start 是执行这个函数所用的时间吧 单位是什么啊?是秒呢?毫秒呢?还是微秒呢?有的地方再除以个 CLK_TCK 或CLOCKS_PER_SEC是什么意思呢?怎样得到毫秒或微妙的精确度啊?
我来帮他解答
提问者采纳
2011-12-02 16:33
clock()返回的是CPU时钟计时单元,而CLOCKS_PER_SEC它用来表示一秒钟会有多少个时钟计时单元,所以正确的运行时间是(finish-start)/CLOCKS_PER_SEC,这样就能得到执行了多少秒,要得到毫秒的话再乘以1000.0,微妙再乘以1000.0
追问
如果要得到毫秒 是直接finish-start还是(finish-start)/CLOCKS_PER_SEC*1000呢?怎么和楼下有点不一样
回答
这个看CLOCKS_PER_SEC的值了,VC中确实定义了CLOCKS_PER_SEC的值是1000,所以
finish-start或者(finish-start)/CLOCKS_PER_SEC*1000.0都能够得到毫秒
转载于:https://www.cnblogs.com/lexus/archive/2013/03/25/2980996.html