NAME
div, ldiv, lldiv, imaxdiv - compute quotient and remainder of
an integer division
SYNOPSIS
#include <stdlib.h>
I div_t div(int numerator , int denominator );
I ldiv_t ldiv(long numerator , long denominator );
I lldiv_t lldiv(long long numerator , long long denominator );
#include <inttypes.h>
I imaxdiv_t imaxdiv(intmax_t numerator , intmax_t denominator );
DESCRIPTION
The
R div ()
function computes the value
numerator/denominator and
returns the quotient and remainder in a structure
named div_t that contains
two integer members (in unspecified order) named quot and rem.
The quotient is rounded towards zero.
The result satisfies quot*denominator+rem = numerator.
The
R ldiv () and
R lldiv ()
and
R imaxdiv ()
functions do the same,
dividing numbers of the indicated type and
returning the result in a structure
of the indicated name, in all cases with fields quot and rem
of the same type as the function arguments.
RETURN VALUE
The div_t (etc.) structure.
CONFORMING TO
SVr4, 4.3BSD, C89.
The functions
R lldiv ()
and
R imaxdiv ()
were added in C99.
EXAMPLE
After
div_t q = div(-5, 3);
the values
q.quot and
q.rem are -1 and -2, respectively.
SEE ALSO