Recommendations
Use size_t for all integer values representing the size of an object
Rules
Validate integer values used as sizes, indices, loop counters, and lengths
All Integer operations must be guaranteed not to result in overflow, truncation, or sign error
Do not make assumptions about the type of a bit-field when used in an expression
Guarantee that Integer conversions do not result in lost or misinterpreted data
Guarantee that integer operations do not result in an overflow