timeval时间溢出问题

该结构体是Linux系统中定义,struct timeval结构体在time.h中的定义为:

struct timeval
{
__time_t tv_sec;        /* Seconds. */
__suseconds_t tv_usec;  /* Microseconds. */
};

在ndk中使用tv_sec或者tv_usec时,需先强制类型转换,否则直接用于计算或者显示会有溢出现象(如tv_sec的值输出为负数)。

例子如下:

long long getCurrentTimeInMilliseconds()      struct timeval tv;gettimeofday(&tv,NULL);return ((long long)tv.tv_sec) * 1000 + ((long long)tv.tv_usec) / 1000;
}

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部