Comment

Comment by WalterBright

The reality is that C `int` is 32 bits in size.

Sure, that's not true for 16 bit targets. But are you really going to port a 5Mb program to 16 bits? It's not worth worrying about. Your code is highly unlikely to be portable to 16 bits anyway.

The problem is with `long`, which is 32 bits on some machines and 64 bits on others. This is just madness. Fortunately, `long long` is always 64 bits, so it makes sense to just abandon `long`.

So there it is:

    char - 8 bits
    short - 16 bits
    int - 32 bits
    long long - 64 bits
Done!

(Sheesh, all the endless hours wasted on the size of an `int` in C.)

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton