#include<sys/time.h> #include<math.h> #include<stdio.h> int function(void) { int a=0,b=0,sum=0; for(;a<300;a++) { for(;b<=100;b++) sum+=b; } return sum; } int main(void) { int sum; float timeuse; struct timeval t_start,t_stop; gettimeofday(&t_start,NULL); sum=function(); gettimeofday(&t_stop,NULL); // timeuse=t_stop.tv_sec-t_start.tv_sec+(t_stop.tv_usec-t_start.tv_usec)/1000000; // 用这个计算结果是0.000000 精确度不高所至 timeuse=(t_stop.tv_sec-t_start.tv_sec)*1000000+t_stop.tv_usec-t_start.tv_usec; timeuse/=1000000 ; printf("the programme run %f second/n the result of 1+2+3+....100 is %d/n ",timeuse,sum); return 0; } Usage:用这个可以些个检测程序运行所消耗的时间 Note: 在进行微妙级别运算时要先把秒化成微妙 否则结果会出现精度不高