通过settimeofday()纪元时间?

时间:2010-07-30 19:17:23

标签: c epoch

是否可以在C中传递settimeofday()我的time_t / epoch时间值?有人能给我一个如何做到这一点的例子......我的C技能有点生疏:S

是不是:

time_t time = somevalue;
settimeofday(somevalue, NULL);

我在工作的地方没有管理员权限,所以无法测试它。

提前致谢!

1 个答案:

答案 0 :(得分:3)

settimeofday()以struct timeval *作为第一个参数,所以你应该

struct timeval tv;

tv.tv_sec = somevalue;
tv.tv_usec = 0;

settimeofday(&tv,NULL);

后续编辑 gettimeofday()是对应的:

struct timeval tv;

if ( !gettimeofday(&tv,NULL) ) // *always* check return values ;-)
{
    long long microsince1970;
    microsince1970 = tv.tv_sec*1000000 + tv.tv_usec;
    printf("it's been %lld µs ago\n",microsince1970);
}