The Open Group Base Specifications Issue 6
IEEE Std 1003.1, 2004 Edition
Copyright © 2001-2004 The IEEE and The Open Group, All Rights reserved.
A newer edition of this document exists here

NAME

ldiv, lldiv - compute quotient and remainder of a long division

SYNOPSIS

#include <stdlib.h>

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

DESCRIPTION

[CX] [Option Start] The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard is unintentional. This volume of IEEE Std 1003.1-2001 defers to the ISO C standard. [Option End]

These functions shall compute the quotient and remainder of the division of the numerator numer by the denominator denom. If the division is inexact, the resulting quotient is the long integer (for the ldiv() function) or long long integer (for the lldiv() function) of lesser magnitude that is the nearest to the algebraic quotient. If the result cannot be represented, the behavior is undefined; otherwise, quot * denom+rem shall equal numer.

RETURN VALUE

The ldiv() function shall return a structure of type ldiv_t, comprising both the quotient and the remainder. The structure shall include the following members, in any order:

long   quot;    /* Quotient */
long   rem;     /* Remainder */

The lldiv() function shall return a structure of type lldiv_t, comprising both the quotient and the remainder. The structure shall include the following members, in any order:

long long   quot;    /* Quotient */
long long   rem;     /* Remainder */

ERRORS

No errors are defined.


The following sections are informative.

EXAMPLES

None.

APPLICATION USAGE

None.

RATIONALE

None.

FUTURE DIRECTIONS

None.

SEE ALSO

div(), the Base Definitions volume of IEEE Std 1003.1-2001, <stdlib.h>

CHANGE HISTORY

First released in Issue 4. Derived from the ISO C standard.

Issue 6

The lldiv() function is added for alignment with the ISO/IEC 9899:1999 standard.

End of informative text.

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
[ Main Index | XBD | XCU | XSH | XRAT ]