3.3.1.2 Can Implicit Type Conversions Change The Expected Results Of My Expressions?

Yes! The compiler will always use integral promotion and there is no way to disable this (see 13.1 Integral Promotion). In addition, the types of operands to binary operators are usually changed so that they have a common type, as specified by the C Standard. Changing the type of an operand can change the value of the final expression, so it is very important that you understand the type C Standard conversion rules that apply when dealing with binary operators. You can manually change the type of an operand by casting; see 3.3.1.1 When Should I Cast Expressions?