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