9.3.1 Signed and Unsigned Character Types

By default, values of type plain char are signed values. This behavior is implementation-defined by the C standard, and some environments (notably, PowerPC) define a plain C/C++ char value to be unsigned. The command line option -funsigned-char can be used to set the default type to unsigned for a given translation unit.