作业帮 > 综合 > 作业

C++计算一个程序运行时间,精确到毫秒

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/07/08 09:50:28
C++计算一个程序运行时间,精确到毫秒
用clock_t声明两个变量start,finish;
start = clock()
//运行一个函数
finish = clock()
得到的 finish-start 是执行这个函数所用的时间吧 单位是什么啊?是秒呢?毫秒呢?还是微秒呢?有的地方再除以个 CLK_TCK 或CLOCKS_PER_SEC是什么意思呢?怎样得到毫秒或微妙的精确度啊?
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都能够得到毫秒