C Type sizes PC Range Arc Range *char 8 8 unsigned char 8 0..255 8 0..255 signed char 8 -128..127 8 -128..127 *short int 8 16 *unsigned short int 8 0..255 16 0..65535 *signed short int 8 -128..127 16 -32768..32767 *int 16 32 *unsigned int 16 0..65535 32 0..4294967296 *signed int 16 -32768..32767 32 -2147483648..2147483649 *long int 32 32 unsigned long int 32 0..4294967296 32 0..4294967296 signed long int 32 -2147483648..2147483649 32 -2147483648..2147483649 float 32 32 double 64 64 long double 128 64 (pending change to 128) *shouldn't be used, as non-portable.