I'm new to C. sizeof(long) returns 8 because the size of long is 8 bytes (4 bytes for a 32-bit OS).
But I wonder why sizeof(long long) is also 8. Shouldn't it be 16?
#include <stdio.h>
#include <stdint.h>
int main() {
printf("%zu\n", sizeof(unsigned long));
printf("%zu\n", sizeof(unsigned long long));
return 0;
}