CLOCK(9) | Kernel Developer's Manual | CLOCK(9) |
days_in_month
, is_leap_year
,
days_per_year
—
#include <sys/clock.h>
#define SECS_PER_MINUTE 60
#define SECS_PER_HOUR 3600
#define SECS_PER_DAY 86400
#define DAYS_PER_COMMON_YEAR 365
#define DAYS_PER_LEAP_YEAR 366
#define SECS_PER_COMMON_YEAR (SECS_PER_DAY *
DAYS_PER_COMMON_YEAR)
#define SECS_PER_LEAP_YEAR (SECS_PER_DAY *
DAYS_PER_LEAP_YEAR)
static inline int
days_in_month
(int
m);
static inline int
is_leap_year
(uint64_t
year);
static inline int
days_per_year
(uint64_t
year);
<sys/clock.h>
file provides
handy time constants and static inline functions.
days_in_month
() function returns the number of days
in the given month. days_in_month
() assumes 28 days
for February. If the input value is out of the valid range (1-12) then the
function returns -1.
The is_leap_year
() and
days_per_year
() functions take as the input
parameter a value in the Gregorian year format.
<sys/clock.h>
header with
handy utilities originated from
<dev/clock_subr.h>
, which
originated from
<arch/hp300/hp300/clock.c>
.
The
<arch/hp300/hp300/clock.c>
file first appeared in NetBSD 0.8 as a set of hp300
time-converting functions.
<dev/clock_subr.h>
first
appeared in NetBSD 1.3 as a shared list of functions
to convert between “year/month/day/hour/minute/second” and
seconds since 1970 (“POSIX time”). The
<sys/clock.h>
file first
appeared in NetBSD 8.
December 26, 2014 | NetBSD 9.2 |