Advance information security concepts
In languages like C, unsigned integer overflow reliably wraps around; e.g.,
UINT_MAX + 1 yields zero. C standard says that signed integer overflow leads to undefined behavior.
If operands are of different types while comparing, the compiler will promote all to the largest. If one is char and other is int, compiler will convert char to int.