#include <stdlib.h>
ldiv_t ldiv(long numer, long denom);
lldiv_t lldiv(long long numer, long long denom);
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.
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 */
No errors are defined.
The following sections are informative.
div() , the Base Definitions volume of IEEE Std 1003.1-2001, <stdlib.h>