>>59
You're a mental midget. You want to know why? It's because the standard integral types are defined as 'one byte', 'at least two bytes', 'at least two bytes', 'at least four bytes' and 'at least eight bytes' for char, short, int, long and long long respectively. What if I want the largest possible ((u)intmax_t)? What if I want an exact type ((u)int
n_t), say, if I want to work with binary file formats or network protocols without size definitions breaking between architectures? Picture this: I'm reading a file into a struct, and one of the struct's fields needs to be four bytes. What type do I use? Hint: it's not int, because that can be 2 bytes, and it's not long, as on LP64 platforms, it's 8 byted.