C's variable-size integers explained as portability feature, not flaw
An educational retrospective on teaching C explains why types like int, short, and long have no fixed bit-width in the language specification. The author recounts how sizeof(int) returned 2 bytes on old 386 machines versus 4 bytes on most modern systems, and recommends students use the stdint.h header for fixed-width types like int8_t and uint16_t when consistent sizes are required.