Although many common implementations use a two's complement representation of signed integers, the C99 standard declares this as implementation-defined, and allows all of the following representations:

Noncompliant Code Example

Compliant Solution

Risk Assessment

References