a40597d0e95d0f274bdc8353ee0e71b1f99fd105
[reactos.git] / lib / msvcrt / stdlib / ldiv.c
1 /* Copyright (C) 1994 DJ Delorie, see COPYING.DJ for details */
2 #include <msvcrt/stdlib.h>
3
4 /*
5  * @implemented
6  */
7 ldiv_t
8 ldiv(long num, long denom)
9 {
10   ldiv_t r;
11
12   if (num > 0 && denom < 0)
13   {
14     num = -num;
15     denom = -denom;
16   }
17   r.quot = num / denom;
18   r.rem = num % denom;
19   if (num < 0 && denom > 0)
20   {
21     if (r.rem > 0)
22     {
23       r.quot++;
24       r.rem -= denom;
25     }
26   }
27   return r;
28 }