Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

In each case, 50 and 2 have the same sign.

Sun Studio 10 C 5.7 Compiler

The result is the same sign as the dividend; thus, the remainder of -23/4 is -3.

gcc

GCC always follows the C99 requirement that the result of division is truncated towards zero.

Compliant Solution

To provide a true (never negative) modulo operation, use the IMOD ("integer modulo") macro:

...