这是转换微秒并将其表示为我的应用程序中的timeval的正确方法吗?我需要使用struct timeval,上面的代码是将双微秒转换为timeval的例程的一部分

此代码中的负值

//更新

#include <iostream>
#include <sys/time.h>
#include <stdint.h>

void convert(uint64_t offset , struct timeval t)
{

std::cout <<  "currentTimeOffset " << offset / 1000000 << "startTimeOffset " << t.tv_sec  << std::endl;
t.tv_usec =  offset % 1000000L;
std::cout <<  "stattime usec " <<  t.tv_usec << std::endl ;


}

int main(int argc , char** argv)
{

struct timeval test;

uint64_t t = 18446744073709551615;
convert(t , test);

return 0;
}

最佳答案

就像是:

timeval to_timeval(double usec) {
    return { usec / 1000000, usec % 1000000 };
}

关于c++ - 给定一个微秒的值,如何准确获取时间结构?/*更新负值*/,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29899733/

10-10 18:16