I don't know what the ANSI/ISO C standard says about this, but I would expect the if block in the example below to be executed when a is 0 and b is 65535:
/* a and b are unsigned short (16 bits). */ if( (a - b) < 10) { do something }