Arduino strtok
Neste tutorial, discutiremos a tokenização de uma string usando a função strtok()
presente no Arduino.
Tokenizar uma string usando a função strtok()
no Arduino
Considere que você tem um char
array
de nomes de animais separados por uma vírgula e deseja separar cada nome do char
array
. Neste caso, você pode usar a função strtok()
para separar os nomes dos animais do char
array
. A função strtok()
recebe duas variáveis como entrada. A primeira variável é do tipo char
em que os nomes dos animais são armazenados, e a segunda variável é um delimitador de separação como uma vírgula. Esta função retorna uma variável do tipo char
separada com base em um delimitador. Por exemplo, suponha que precisamos separar o primeiro nome de um animal de uma lista de nomes de animais.
void setup() {
char AnimalNames[] = "Bog,Cat";
char firstName = strtok(AnimalNames, ",");
}
No código acima, os nomes dos animais são armazenados na variável AnimalNames
do tipo char
, e o resultado será armazenado na variável firstName
do tipo char
. Você pode alterar as variáveis de acordo com as variáveis fornecidas. Agora considere outro exemplo, queremos extrair todos os nomes dos animais presentes em uma lista e imprimi-los no monitor serial do Arduino. Para fazer isso, temos que usar um loop que irá iterar a lista até que esteja vazia.
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, ",");
}
}
No código acima, os nomes dos animais são armazenados na variável AnimalNames
do tipo char
e o resultado será armazenado na variável name
do tipo char
. Você pode alterar as variáveis de acordo com as variáveis fornecidas. Os nomes dos animais serão exibidos no monitor serial usando a função Serial.print()
.