 | | Perhaps the most significant divergence of ANSI C from widely accepted practice is in expression evaluation. In original K&R C, unsigned specified exactly one type. There were no unsigned chars, unsigned shorts, or unsigned longs. This is not to say that most compilers did not support these types, just that they were never “official.” Naturally, since the rules for how these unofficial types behaved in expressions in which they were mixed with other types did not exist, different compiler implementors used different rules. | |
|