[Go to CFHT Home Page] Man Pages
Back to Software Index  BORDER=0Manpage Top Level
    div(3C) manual page Table of Contents

Name

div, ldiv, lldiv - compute the quotient and remainder

Synopsis

#include <stdlib.h>

div_t div(int numer, int denom);

ldiv_t ldiv(long int numer, long int denom);

lldiv_t lldiv(long long numer, long long denom);

MT-Level

MT-Safe

Description

div() computes the quotient and remainder of the division of the numerator numer by the denominator denom. This function provides a well-defined semantics for the signed integral division and remainder operations, unlike the implementation-defined semantics of the built-in operations. The sign of the resulting quotient is that of the algebraic quotient, and, if the division is inexact, the magnitude of the resulting quotient is the largest integer less than the magnitude of the algebraic quotient. If the result cannot be represented, the behavior is undefined; otherwise, quotient * denom + remainder will equal numer.

ldiv() and lldiv() are similar to div(), except that the arguments and the members of the returned structure are different. ldiv() returns a structure of type ldiv_t and has type long int. lldiv() returns a structure of type lldiv_t and has type long long.

Return Values

div() returns a structure of type div_t, comprising both the quotient and remainder:

        int    quot;    /*quotient*/
        int    rem;    /*remainder*/

ldiv() returns a structure of type ldiv_t and lldiv() returns a structure of type lldiv_t, comprising both the quotient and remainder:

        long int    quot;    /*quotient*/
        long int    rem;    /*remainder*/


Table of Contents