blob: 72d5ef269e3727ccb6bc3f30a037c2332c60a92f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
.. highlight:: cpp
.. _arduino-char:
char
====
Description
-----------
The ``char`` type stores a 1-byte character value (or integer with
value from -128 to 127). Character literals are written in single
quotes, like this: ``'A'`` (for multiple characters - strings - use
double quotes: ``"ABC"``).
Just like everything else on a computer, characters are stored as
numbers. You can see the specific encoding in the `ASCII chart
<http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters>`_\
. 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
decimal value 66, since the ASCII value of the capital letter A in
decimal is 65). See the :ref:`Serial.println()
<arduino-serial-println>` documentation for more information about how
characters are converted into numbers.
The ``char`` datatype is a signed type, meaning that it encodes
numbers from -128 to 127. For an unsigned type, which stores values
from 0 to 255, just use the type ``unsigned char`` (two words).
Example
-------
::
// the following two lines are equivalent:
char c = 'A';
char c = 65;
See also
--------
- :ref:`arduino-int`
- :ref:`arduino-array` (a string is just an array of ``char``\ s)
- :ref:`Serial.println() <arduino-serial-println>`
.. include:: cc-attribution.txt
|