Occhio che quella guida contiene qualche errore, si spera migliori.
Uno di questi è: insigned che non esiste, come pure Insigned.
Il linguaggio C/C++ prevede una "istruzione" per dare un nome a piacere ad un tipo di dato predefinito.
L'istruzione in questione è typedef.
Il termine
istruzione in questo caso è ambiguo.
I tipi predefiniti in C sono:
char
int
long
long long
float
double
Questi sono tutti tipi con segno (signed) anche se non è specificato prima.
Per i primi 4 si può specificare unsigned, cioè:
unsigned char
uinsigned int
unsigned long
unsigned long long
Grazie alla "istruzione" typedef arduino ha ridefinito il tipo unsigned char dandogli il nome byte.
In poche parole dentro al codice delle librerie c'è,
typedef unsigned int word;
typedef bool boolean;
typedef uint8_t byte;
Ecco che spunta
uint8_t, già visto prima ma anche
wordPertanto usare
bool al posto di
boolean è equivalente.
Come pure
uint8_t al posto di
unsigned char o ancora
byteEvidentemente si fa prima a scrivere
byte che
unsigned charPer finire
uint8_t è disponibile fino a 64 al posto di 8, cioè uint16_t, uint32_t e uint64_t
tutti senza segno, basta non digitare la
u per averli con segno.
Ecco che la potenza del linguaggio anziché semplificare complica, ma aumenta la flessibilità.
PS: Spero che questo tu possa digerirlo senza puntare gli occhi verso la finestra