## div(3C)

Name
| Synopsis
| Description
| Return Values
| Attributes
| See Also

#### 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`);

#### Description

The **div()** function computes the quotient and remainder of the division
of the numerator `numer` by the denominator `denom`. It 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`.

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

#### Return Values

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

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

The **ldiv()** function 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*/

#### Attributes

#### See Also

SunOS 5.11 Last Revised 24 Jul 2002

Name
| Synopsis
| Description
| Return Values
| Attributes
| See Also