This section describes functions for performing integer division. These
functions are redundant in the GNU C library, since in GNU C the `/'
operator always rounds towards zero. But in other C implementations,
`/' may round differently with negative arguments. div and
ldiv are useful because they specify how to round the quotient:
towards zero. The remainder has the same sign as the numerator.
These functions are specified to return a result r such that the value
r.quot*denominator + r.rem equals
numerator.
To use these facilities, you should include the header file `stdlib.h' in your program.
div
function. It has the following members:
int quot
int rem
div computes the quotient and remainder from
the division of numerator by denominator, returning the
result in a structure of type div_t.
If the result cannot be represented (as in a division by zero), the behavior is undefined.
Here is an example, albeit not a very useful one.
div_t result; result = div (20, -6);
Now result.quot is -3 and result.rem is 2.
ldiv
function. It has the following members:
long int quot
long int rem
(This is identical to div_t except that the components are of
type long int rather than int.)
ldiv function is similar to div, except that the
arguments are of type long int and the result is returned as a
structure of type ldiv.
Go to the first, previous, next, last section, table of contents.