【发布时间】:2014-01-25 19:35:44
【问题描述】:
我试图找出在 C 中执行函数所需的时间。 我正在尝试的是以下内容:
#include <time.h>
time_t start;
time_t finish;
double seconds;
time(&start);
FUNCTION
time(&finish);
seconds = difftime(finish,start);
printf("Time taken is %.f", seconds);
但是,不同函数的返回值始终相同:1389133144 秒。
有什么帮助吗? 谢谢!
【问题讨论】:
-
您是否确认了 time() 的 retval?
-
您收到任何编译警告吗?如果你不包括
stdio.h,那么printf可能会被隐式原型化为采用int参数并有损地投射你的双打。 -
@tommyo 你是什么意思? time() 不应该给你当前的日历时间吗?
-
@evilotto 不,我也包括了 stdio.h,我只是没有把它们放在这段代码中。完全没有编译器错误。
-
请粘贴您的真实代码。您得到的值 - 1389133144 - 可疑地接近当前的 unix 时间。