语法

#include <sys/time.h>

void timeradd(struct timeval *a, struct timeval *b,
              struct timeval *res);

void timersub(struct timeval *a, struct timeval *b,
              struct timeval *res);

void timerclear(struct timeval *tvp);

int timerisset(struct timeval *tvp);

int timercmp(struct timeval *a, struct timeval *b, CMP);

glibc的功能测试宏要求(请参阅feature_test_macros(7)):

上面显示的所有功能:
从glibc 2.19开始:
_DEFAULT_SOURCE
Glibc 2.19及更早版本:
_BSD_SOURCE

说明

提供这些宏是为了对timeval结构进行操作,其定义如下:

struct timeval {
    time_t      tv_sec;     /* seconds */
    suseconds_t tv_usec;    /* microseconds */
};

timeradd()将时间值添加到a和b中,并将总和放入res指向的timeval中。将结果标准化,以使res-> tv_usec的值在0到999,999之间。

timersub()从a中的时间值中减去b中的时间值,并将结果放入res指向的timeval中。将结果标准化,以使res-> tv_usec的值在0到999,999之间。

timerclear()将tvp指向的timeval结构清零,以使其代表纪元:1970-01-01 00:00:00 +0000(UTC)。

如果tvp指向的timeval结构的任何字段包含非零值,则timerisset()返回true(非零)。

timercmp()使用比较运算符CMP比较a和b中的计时器值,并根据比较结果返回true(非零)或false(0)。某些系统(而非Linux / glibc)的timercmp()实现中断,其中CMP> =,

!timercmp(...,)
!timercmp(...,!=)

TIMERADD - Linux手册页

Linux程序员手册 第3部分
更新日期: 2017-09-15

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/

错误说明

没有定义错误。

遵循规范

不在POSIX.1中。存在于大多数BSD衍生产品上。

返回值

timerisset()和timercmp()返回true(非零)或false(0)。

名称

timeradd,timersub,timercmp,timerclear,timerisset-timeval操作

另外参见

gettimeofday(2),time(7)

日期:2019-08-20 18:01:31 来源:oir作者:oir