Duvidas-Qual a função de trabalho que a string exerce no Arduino?

Já pesquisei em diversos sites, mais só consegui entender que elas permitem criar palavras de de caracter em caracter ou dependendo da string permite criar palavras sem a necessidade de declarar caracter por caracter; MAIS NA VERDADE QUAL A FUNÇÃO DE TRABALHO QUE A STRING EXERCE NO ARDUINO, o que eu posso fazer com estas palavras ou caracteres?: Se alguem puder me exclarecer estas duvidas, desde já agradeço!

Exibições: 545

Responder esta

Respostas a este tópico

O que você pode fazer com caracteres? R.Formar palavras.

O que você pode fazer com palavras? R. Formar Frases e Expressões com o objetivo de transmitir, receber ou armazenar informação.

Primeiro, lembrando que variáveis são a "grosso modo" espaços de armazenamento de informação na memória. Nós definimos seus tipos e nomes de acordo com nossas necessidades (ex.char a)

Na "linguagem" do Arduino existem dois "tipos" de string. A string clássica, com "s" minúsculo é, como você já observou, uma cadeia de caracteres, de char. Por que usa-la?
Bem, você quer criar um programa para apresentar no LCD a frase "Agora sei o que é uma string".

Seria possível criar uma variável para cada caractere e teríamos uma lógica mais ou menos assim:

//declaração da frase

char letra1 = "A";

char letra2 = "g";

char letra3 = "o";

char letra4 = "r";

char letra5 = "a";

char letra6 = " ";

char letra7 = "s";

char letra8 = "e";

char letra9 = "i";

...

char letra26 = "i";

char letra27 = "n";

char letra28 = "g";

//imprime no lcd

lcd.print(letra2);

lcd.print(letra3);

lcd.print(letra4);

lcd.print(letra5);

lcd.print(letra6);

...

lcd.print(letra27);

lcd.print(letra28);

Um pouco repetitivo, não?

Agora, se eu colocar todos os caracteres em uma cadeia usando a ideia de string, como ficaria?

//declaração da variável

char[28] frase = "Agora sei o que é uma string"; //sendo o tamanho da cadeia (28) dispensável nesse caso, mas aí a variável teria exatamente o tamanho da PRIMEIRA frase, aquela usada na sua inicialização.

//impressão no lcd

// como é uma repetição, posso usar laços de repetição (pesquise sobre FOR e WHILE e quando usa-los).

for (int i =0; i<28; i++){  //repete 28 vezes, sempre somando 1 a i (índice)

  lcd.print( frase[i] );     // imprime o caractere armazenado na posição "i" da cadeia/vetor frase

}

E aí, qual versão você prefere programar?

Recomendo que pesquise sobre "vetores em C", coloca no Google mesmo que vai aparecer muito material bom e didático já nos primeiros links.

O outro "tipo" de string, com "S" maiúsculo é um objeto, mas pelo jeito isso é assunto pra "mais pra frente".

Existem ainda outros modos de trabalhar com conjunto de caracteres (ponteiros, listas, objetos,...), mas primeiro tenta entender o funcionamento dos dois modelos básicos do Arduino.

 Jonatas Freitas , Sua resposta foi muito boa, estou pegando carona aqui para aprender melhor sobre o arduino. Parabéns!

Pelo q eu entendi, ela permite trabalhar com informações, guardando-as, ou usando elas como ex: uma referencia  de um laço de repetição; Valeu ai meu brother, vou seguir a tua sugestão sobre Vetores! valeu abraço.

na verdade este conceito não exclusivo do arduino e sim da linguagem C que foi adotada pelo arduino, por ser uma linguagem de facil aprendizado, veja o link abaixo.

http://pt.wikibooks.org/wiki/Programar_em_C/Strings

Exato! Não quis aprofundar demais, só dar um exemplo básico do uso. Mas só as funções da biblioteca padrão (listadas no teu link) já são motivos suficientes.

foi um exemplo muito bem escrito e objetivo, somente quis mostrar que isso como outras tantas coisas são herança da linguagem C adotada pelo arduino, estão todos de parabéns este fórum realmente funciona a comunidade é muito unidade e solidária.

Vc foi muito claro nas suas explicações, Vlw ajudou muito! T+.

vlw pela dica!

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço