Il suggerimento, sempre da noi dato agli utenti che utlizzavano la classe "String" è stato: "Impara ad usare le
stringhe classiche del C ... ovvero semplici array di char terminati dal carattere null (0x00) e le funzioni che trovi nella libreria standard (
... che, oltretutto, è automaticamente inclusa dal IDE)
AVR libc ed, in particolare, quanto è in
<string.h> ".
Sicuramente, se questa è la strada migliore, certamente
NON è la più semplice, almeno per "
i meno esperti", che espone il programma al grosso rischio di "
corruzione" della memoria se ... l'utente sbaglia il dimensionamneto dei char array o se copia stringhe classiche in altre strighe classiche magari di dimensioni più piccole o se fa comunque operazioni sugli array usando un indice fuori del valore massimo, ecc. ecc. ... tutte cose che, ribadisco "
i meno esperti", rischiano
facilmente di fare.
In aiuto a tali "
meno esperti" c'è oggi una nuova libreria, installabile dal "
library manager" che è una valida alternativa alla classe "String" pur mantenendone tutte le semplificazioni ed è la "
SafeString"

La libreria "
SafeString" è stata progettata dall'autore (
tale Matthew Ford) per "
i principianti" come sostituto sicuro, robusto e
debuggable perl'utilizzo delle stringhe in Arduino!
La guida completa all'installazione (da library manager) ed all'uso di detta libreria, si trova
QUI ... ne consiglio una attenta lettura.
Se ne è parlato anche parecchio nel gruppo di Google dedicato agli "
sviluppatori di Arduinio",
QUI, è la discussione ancora va avanti

SafeString è sicuramente una valida alternativa alla classe "String", offre le stesse facilitazioni, ma è estremamente sicura, evita i guai della "String" ed è ben manutenuta ... consiglio di provarla !

Fatemi sapere ...

Guglielmo
P.S.: io comunque continuo ad usare le funzioni classiche che si trovano in <string.h> ... ormai ho l'abitudine 