Hello Japo. You are correct, C data types may have different sizes in different implementations, which can be annoying, but the ANSI standard defines a minimum range the types must represent. Take a look here:
http://www.acm.uiuc.edu/webmonkeys/b...guide/2.4.html
Which was actually a good idea from the guys who created the standard, otherwise portability would be a pain.