Versions Compared

Key

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

Division and modulo operations are susceptible to divide-by-zero errors.

...

Division

The result of the / operator is the quotient from the division of the first arithmetic operand by the second arithmetic operand. Division operations are susceptible to divide-by-zero errors. Overflow can also occur during twos-complement signed integer division when the dividend is equal to the minimum (negative) value for the signed integer type and the divisor is equal to -1.

...

Non-Compliant Code Example

...

Code Block
signed long sl1, sl2, result;

if ( (sl2 == 0) || ( (sl1 == LONG_MIN) && (sl2 == -1) ) ) {
  /* handle error condition */
}
result = sl1 / sl2;

Modulo

The modulo operator provides the remainder when two operands of integer type are divided.

Non-Compliant Code Example

...