您的位置:首页 > 编程语言 > C语言/C++

计算程序运行时间 C语言 clock()函数

2012-03-18 11:53 696 查看
自己没事可以看看程序的运行时间,第一个想到的还是以前会的clock() ,先把代码扔这。

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

int main()

{

clock_t begin, end;

double cost;

begin = clock();

/* 程序代码 */

end = clock();

cost = (double)(end - begin) / CLOCKS_PER_SEC;

printf("%lf seconds\n", cost);

system("pause");

return 0;

}

这个函数返回开启进程和调用clock()之间的的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(wal-clock),每过千分之一秒(1毫秒),调用clock()函数返回的值就加1。

但是是我感觉这段程序有两个问题,很不爽。第一是精度,只能精确到1ms,低于1ms的程序全部输出0ms,因为WinNT的时间精度最小是1ms;第二是准确度,printf()的速度太快了,基本上和clock()的速度一样,所以误差很大很大。。。

不晓得在Win下怎么才能提高计算精度。。。

文章来源:Slyar Home (www.slyar.com)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: