JKop said:
int a;
short b;
long c;
char d;
According to the Standard, are the above signed or unsigned?
...
Plain 'int', 'short' and 'long' are always equivalent to 'signed int',
'signed short' and 'signed long', unless used to declare a bit-field (in
which case it is implementation-defined whether they are signed or
unsigned).
A plain 'char' is always a separate type, different (as a type) from
both 'signed char' and 'unsigned char'. However, the value range of char
always coincides with value range of either 'signed char' or 'unsigned
char' (which one - implementation defined). Also, the same comment about
bit-fields applies to plain 'char' as well.