timeradd

Langue: en

Version: 2007-07-31 (openSuse - 09/10/07)

Section: 3 (Bibliothèques de fonctions)

NAME

timeradd, timersub, timercmp, timerclear, timerisset - timeval operations

SYNOPSIS


#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);



void timerisset(struct timeval *tvp);



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

Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

All functions shown above require: _BSD_SOURCE

DESCRIPTION

The macros are provided to operate on timeval structures, defined in <sys/time.h> as:

struct timeval {

    time_t      tv_sec;     /* seconds */

    suseconds_t tv_usec;    /* microseconds */

};

timeradd() adds the time values in a and b, and places the sum in the timeval pointed to by res. The result is normalized such that res->tv_usec has a value in the range 0 to 999,999.

timersub() subtracts the time value in b from the time value in a, and places the result in the timeval pointed to by res. The result is normalized such that res->tv_usec has a value in the range 0 to 999,999.

timerclear() zeroes out the timeval structure pointed to by tvp, so that it represents the time at midnight on the morning of 1 January 1970 (the Epoch).

timerisset() returns true (non-zero) if either field of the timeval structure pointed to by tvp contains a non-zero value.

timercmp() compares the timer values in a and b using the comparison operator CMP, and returns true (non-zero) or false (0) depending on the result of the comparison.

RETURN VALUE

timerisset() and timercmp() return true (non-zero) or false (0). .SHERRORS No errors are defined.

CONFORMING TO

Not in POSIX.1-2001. Present on most BSD derivatives.

SEE ALSO

gettimeofday(2), time(7).