DIV(3C) Standard C Library Functions DIV(3C)

## 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 attributes(7) for descriptions of the following attributes:

+--------------------+-----------------+

| ATTRIBUTE TYPE | ATTRIBUTE VALUE |

+--------------------+-----------------+

|Interface Stability | Standard |

+--------------------+-----------------+

|MT-Level | MT-Safe |

+--------------------+-----------------+

## SEE ALSO

attributes(7), standards(7)

illumos July 24, 2002 DIV(3C)

div, ldiv, lldiv - compute the quotient and remainder

#include <stdlib.h>

The

the numerator

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,

The

arguments and the members of the returned structure are different. The

The

The

quotient and remainder:

int quot; /*quotient*/

int rem; /*remainder*/

The

returns a structure of type

remainder:

long int quot; /*quotient*/

long int rem; /*remainder*/

See attributes(7) for descriptions of the following attributes:

+--------------------+-----------------+

| ATTRIBUTE TYPE | ATTRIBUTE VALUE |

+--------------------+-----------------+

|Interface Stability | Standard |

+--------------------+-----------------+

|MT-Level | MT-Safe |

+--------------------+-----------------+

attributes(7), standards(7)

illumos July 24, 2002 DIV(3C)