问题描述
我需要知道我花了多少时间在C中运行特定方法,但计时器不起作用,并且它会打印值:0.000000。 我读到正确的代码是:
clock_t a,b;
a=clock();
//code...
b=clock();
double result =(double) (a-b)/CLOCKS_PER_SEC;
但是它不适用于我的程序。
int calculate (char *file1,char *file2,int param,char* path ){
double timeSpent = 0.0;
clock_t begin,finish;
begin = clock();
int dim1=strlen(file1);
int dim2= strlen(file2);
int i;
int **ppm =matrix(file1,dim1,file2,dim2,createMatrix(dim1,dim2));
int distance = ppm[dim1][dim2];
struct Instruction istr[distance + 1];
int tmp = start(ppm,file1,&dim1,&dim2,istr);
end(file1,istr,tmp);
for (i = 0; i <= dim1; i++)
free(ppm[i]);
free(ppm);
if (numDiv > 0){
numDiv--;}
finish= clock();
timeSpent=(double ) (finish-begin)/CLOCKS_PER_SEC;
printf("time: %3f",timeSpent);
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)