What\'s the point of negative ASCII values?
int a = \'«\'; //a = -85 but as in ASCII table \'<<\' should be 174
ASCII ranges 0..127, ANSI (also called 'extended ASCII') ranges 0..255.
ANSI range won't fit in a signed char (the default type for characters in most compilers).
Most compilers have an option like 'char' Type is Unsigned (GCC).