Linux下获取时间函数gettimeofday()
发布日期:2021-09-12 06:44:55 浏览次数:2 分类:技术文章

本文共 799 字,大约阅读时间需要 2 分钟。

选择gettimeofday()函数的原因:精度比timer()函数高很多,time函数只精确到秒,而gettimeofday精确到微妙,足以满足各种所需,虽然有精度比它更高的,但是它的系统调用开销相对更小

函数原型

#include
int gettimeofday(struct timeval* tv, struct timezone* tz);

成功返回0, 失败返回-1, 出错返回errno

参数意义

  • tv是指向下面这个结构体的一个指针
struct timeval {    time_t tv_sec;    suseconds_t tv_usec;}

time_t 和suseconds_t 都是lont int 类型, tv_sec 表示Epoch 秒数, 而tv_usec 是额外的微妙精度

  • tz 是一个历史产物, 早期的UNIX实现用来获取系统的时区信息, 目前已经被废弃了, 应始终将其置为NULL.

示例

#include 
#include
using namespace std;int main() { struct timeval tv; gettimeofday(&tv, nullptr); cout << "seconds since 00:00:00, 1 Jan 1970 UTC: " << tv.tv_sec << endl; cout << "Additional microsecondsss: " << tv.tv_usec << endl;}
lzj@lzj-PC:~$ ./a.outseconds since 00:00:00, 1 Jan 1970 UTC: 1533287671Additional microsecondsss: 161258

转载地址:https://blog.csdn.net/weixin_36888577/article/details/81391326 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Ubuntu 17.10 安装WPS
下一篇:c++11 : 以类内成员函数初始化线程

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年04月18日 10时17分48秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章