1LDIV(3P)                   POSIX Programmer's Manual                  LDIV(3P)
2
3
4

PROLOG

6       This  manual  page is part of the POSIX Programmer's Manual.  The Linux
7       implementation of this interface may differ (consult the  corresponding
8       Linux  manual page for details of Linux behavior), or the interface may
9       not be implemented on Linux.
10

NAME

12       ldiv, lldiv — compute quotient and remainder of a long division
13

SYNOPSIS

15       #include <stdlib.h>
16
17       ldiv_t ldiv(long numer, long denom);
18       lldiv_t lldiv(long long numer, long long denom);
19

DESCRIPTION

21       The functionality described on this reference page is aligned with  the
22       ISO C  standard.  Any  conflict between the requirements described here
23       and the ISO C standard is unintentional. This  volume  of  POSIX.1‐2017
24       defers to the ISO C standard.
25
26       These  functions  shall compute the quotient and remainder of the divi‐
27       sion of the numerator numer by the denominator denom.  If the  division
28       is  inexact, the resulting quotient is the long integer (for the ldiv()
29       function) or long long integer (for the  lldiv()  function)  of  lesser
30       magnitude  that is the nearest to the algebraic quotient. If the result
31       cannot  be  represented,  the   behavior   is   undefined;   otherwise,
32       quot * denom+rem shall equal numer.
33

RETURN VALUE

35       The ldiv() function shall return a structure of type ldiv_t, comprising
36       both the quotient and the remainder. The structure  shall  include  the
37       following members, in any order:
38
39
40           long   quot;    /* Quotient */
41           long   rem;     /* Remainder */
42
43       The lldiv() function shall return a structure of type lldiv_t, compris‐
44       ing both the quotient and the remainder. The  structure  shall  include
45       the following members, in any order:
46
47
48           long long   quot;    /* Quotient */
49           long long   rem;     /* Remainder */
50

ERRORS

52       No errors are defined.
53
54       The following sections are informative.
55

EXAMPLES

57       None.
58

APPLICATION USAGE

60       None.
61

RATIONALE

63       None.
64

FUTURE DIRECTIONS

66       None.
67

SEE ALSO

69       div()
70
71       The Base Definitions volume of POSIX.1‐2017, <stdlib.h>
72
74       Portions  of  this text are reprinted and reproduced in electronic form
75       from IEEE Std 1003.1-2017, Standard for Information Technology --  Por‐
76       table  Operating System Interface (POSIX), The Open Group Base Specifi‐
77       cations Issue 7, 2018 Edition, Copyright (C) 2018 by the  Institute  of
78       Electrical  and  Electronics Engineers, Inc and The Open Group.  In the
79       event of any discrepancy between this version and the original IEEE and
80       The  Open Group Standard, the original IEEE and The Open Group Standard
81       is the referee document. The original Standard can be  obtained  online
82       at http://www.opengroup.org/unix/online.html .
83
84       Any  typographical  or  formatting  errors that appear in this page are
85       most likely to have been introduced during the conversion of the source
86       files  to  man page format. To report such errors, see https://www.ker
87       nel.org/doc/man-pages/reporting_bugs.html .
88
89
90
91IEEE/The Open Group                  2017                             LDIV(3P)
Impressum