c语言 函数运行时间,[转载]C语言获得函数的执行时间

C语言获得函数的执行时间

1. 精确到秒,计时单位为秒

#include

time_t start_time,end_time;

start_time=time(NULL);

end_time=time(NULL);

printf("循环结束/n");

printf("循环的执行时间为%f/n",difftime(end_time,start_time));

2.精确到毫秒,计时单位为 毫妙

double cost_time;

clock_t start,end;

start=clock();

end=clock();

cost_time=(double)(end-start)/CLOCKS_PER_SEC);

printf("所用时间为%f",cost_time);

//C++的例子

#include

void main()

{

clock_t start=clock();

for(int k=0; k<100; k++)

{

vector v;

for(int i=0; i<10000; i++) v.push_back(i);

for(i=0; i<10000; i++) v.pop_back() ;

}

clock_t end=clock();

cout《end-start《"毫秒"《endl;

}

clock_t clock(); // 返回当前的机器时间(毫秒单位)

// clock_t其实就是long类型

3.精确到微秒,计时单位为 微秒

LARGE_INTEGER tick;

LARGE_INTEGER timestamp;

unsigned long time;

QueryPerformanceFrequency(&tick);

//返回值:非零,硬件支持高精度计数器;零,硬件不支持,读取失败。

QueryPerformanceCounter(&timestamp);

//用于得到高精度计时器的值

unsigned int us=(timestamp.QuadPart %

tick.QuadPart)*1E6/tick.QuadPart;

time = timestamp.QuadPart/tick.QuadPart;

int hours = time/3600;

time = time - (hours * 3600);

int minutes = time / 60;

int seconds = time - (minutes * 60);

printf("系统已经启动了 %d小时%d分%d秒 %u微秒/n

系统钟频%u,%uMHz/n",

hours, minutes, seconds, us, tick.LowPart,

tick.LowPart/1000000);

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值