O'Reilly logo
  • Rahul Dhalla thinks this is interesting:

Normally, when you use a number such as 2345 in your program code, it is stored as an int type. What if you use a number such as 1000000 on a system in which int will not hold such a large number? Then the compiler treats it as a long int, assuming that type is large enough. If the number is larger than the long maximum, C treats it as unsigned long. If that is still insufficient, C treats the value as long long or unsigned long long, if those types are available.

From

Cover of C Primer Plus, Sixth Edition

Note

Long int means long (32 bits) Long Long int means long long(64 bits)