Versions Compared

Key

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

...

Code Block
bgColor#ccccff
langc
#include <limits.h>
 
signed int si_a;
signed int si_b;
signed int result;

void func(void) {
  /* Initialize si_a, si_b and result */

  if (((si_a^si_b)
    & (((si_a ^ ((si_a^si_b)
    & (1 << (sizeof(int)  * CHAR_BIT -1)))) - si_b)^si_b)) < 0) {
    /* Handle error condition */
  } else {
    result = si_a - si_b;
  }

  /* ... */
}

...