A data type that takes up 1 byte of memory that stores a character value. Character literals are written in single quotes, like this: ‘A’ (for multiple characters – strings – use double quotes: “ABC”).
Characters are stored as numbers however. You can see the specific encoding in the ASCII chart. This means that it is possible to do arithmetic on characters, in which the ASCII value of the character is used (e.g. ‘A’ + 1 has the value 66, since the ASCII value of the capital letter A is 65). See Serial.println reference for more on how characters are translated to numbers.
The char datatype is a signed type, meaning that it encodes numbers from -128 to 127. For an unsigned, one-byte (8 bit) data type, use the byte data type.
char myChar = 'A'; char myChar = 65; // both are equivalent