Node:Integer Division, Next:Floating Point Numbers, Previous:Integers, Up:Arithmetic
This section describes functions for performing integer division. These
functions are redundant when GNU CC is used, because 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_t | Data Type |
This is a structure type used to hold the result returned by the div
function. It has the following members:
|
div_t div (int numerator, int denominator) | Function |
This function 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 |
ldiv_t | Data Type |
This is a structure type used to hold the result returned by the ldiv
function. It has the following members:
(This is identical to |
ldiv_t ldiv (long int numerator, long int denominator) | Function |
The 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_t .
|
lldiv_t | Data Type |
This is a structure type used to hold the result returned by the lldiv
function. It has the following members:
(This is identical to |
lldiv_t lldiv (long long int numerator, long long int denominator) | Function |
The lldiv function is like the div function, but the
arguments are of type long long int and the result is returned as
a structure of type lldiv_t .
The |
imaxdiv_t | Data Type |
This is a structure type used to hold the result returned by the imaxdiv
function. It has the following members:
(This is identical to See Integers for a description of the |
imaxdiv_t imaxdiv (intmax_t numerator, intmax_t denominator) | Function |
The imaxdiv function is like the div function, but the
arguments are of type intmax_t and the result is returned as
a structure of type imaxdiv_t .
See Integers for a description of the The |