Arduino strtok
In questo tutorial, discuteremo la tokenizzazione di una stringa utilizzando la funzione strtok()
presente in Arduino.
Tokenizzare una stringa usando la funzione strtok()
in Arduino
Considera, hai un char
array
di nomi di animali separati da una virgola e vuoi separare ogni nome dal char
array
. In questo caso, puoi usare la funzione strtok()
per separare i nomi degli animali dal char
array
. La funzione strtok()
accetta due variabili come input. La prima variabile è di tipo char
in cui sono memorizzati i nomi degli animali, e la seconda variabile è un delimitatore per la separazione come una virgola. Questa funzione restituisce una variabile di tipo char
separata in base a un delimitatore. Ad esempio, supponiamo di dover separare il nome di un animale da una lista di nomi di animali.
void setup() {
char AnimalNames[] = "Bog,Cat";
char firstName = strtok(AnimalNames, ",");
}
Nel codice sopra, i nomi degli animali sono memorizzati nella variabile AnimalNames
di tipo char
, e il risultato sarà memorizzato nella variabile firstName
di tipo char
. È possibile modificare le variabili in base alle variabili fornite. Consideriamo ora un altro esempio, vogliamo estrarre tutti i nomi degli animali presenti in una lista e stamparli sul monitor seriale di Arduino. Per fare questo, dobbiamo usare un bucle che itererà la lista finché non sarà vuoto.
char AnimalNames[] = "dog,cat,donkey,horse";
char *name = NULL;
void setup() {
name = strtok(AnimalNames, ",");
Serial.begin(9600);
while (name != NULL) {
Serial.println(name);
name = strtok(NULL, ",");
}
}
Nel codice sopra, i nomi degli animali sono memorizzati nella variabile AnimalNames
di tipo char
e il risultato sarà memorizzato nella variabile name
di tipo char
. È possibile modificare le variabili in base alle variabili fornite. I nomi degli animali verranno visualizzati sul monitor seriale utilizzando la funzione Serial.print()
.