ccharsignedunsigned-char

Any compiler which takes 'char' as 'unsigned'?


Is there any C compiler which takes the default type of char as unsigned unless explicitly mentioned by the user in the file or project settings?


Solution

  • GCC does. But only when compiling for platforms where an unsigned char is the convention, including ARM linux[*]. When GCC compiles for x86, the default is for char to be signed.

    [*] Or at least it has been in the past. For all I know linux has switched to a different default ABI on ARM since.

    Update '2013: ARM compilers (gcc, clang) for Android NDK default to unsigned char. The x86 and MIPS compilers default to signed char.