Special cases
There are a few surprises in this area.
For example, signed int behaves the same as
int except possibly for bit-fields,
in which a plain int
may denote an unsigned-behaving quantity.
Another interesting note is that each enumeration type must be compatible with some integral type. For portable programs this means that enumeration types effectively are separate types, and, for the most part, the ANSI C standard views them in that manner.