Arduino strtok
Dans ce tutoriel, nous aborderons le tokenisation d’une chaîne en utilisant la fonction strtok()
présente dans Arduino.
Tokenize une chaîne en utilisant la fonction strtok()
dans Arduino
Considérez, vous avez un char
de noms d’animaux séparés par une virgule, et que vous voulez séparer chaque nom du tableau char
. Dans ce cas, vous pouvez utiliser la fonction strtok()
pour séparer les noms d’animaux du tableau char
. La fonction strtok()
prend deux variables en entrée. La première variable est de type char
dans laquelle les noms d’animaux sont stockés, et la seconde variable est un délimiteur pour la séparation comme une virgule. Cette fonction renvoie une variable de type char
séparée en fonction d’un délimiteur. Par exemple, supposons que nous devions séparer le prénom d’un animal d’une liste de noms d’animaux.
void setup() {
char AnimalNames[] = "Bog,Cat";
char firstName = strtok(AnimalNames, ",");
}
Dans le code ci-dessus, les noms d’animaux sont stockés dans la variable AnimalNames
de type char
, et le résultat sera stocké dans la variable firstName
de type char
. Vous pouvez modifier les variables en fonction des variables données. Considérons maintenant un autre exemple, nous voulons extraire tous les noms d’animaux présents dans une liste et les imprimer sur le moniteur série d’Arduino. Pour ce faire, nous devons utiliser une boucle qui itérera la liste jusqu’à ce qu’elle soit vide.
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, ",");
}
}
Dans le code ci-dessus, les noms d’animaux sont stockés dans la variable AnimalNames
de type char
et le résultat sera stocké dans la variable name
de type char
. Vous pouvez modifier les variables en fonction des variables données. Les noms des animaux seront affichés sur le moniteur série à l’aide de la fonction Serial.print()
.