Escolar Documentos
Profissional Documentos
Cultura Documentos
Descrio
Strings de texto podem ser representadas de duas formas. Voc pode utilizar o tipo
de varivel String, que parte do Arduino desde a verso 0019, ou voc pode
fazer uma string a partir de um array de variveis do tipo char e adicionar a
terminao nula.
Este artigo descreve o ltimo mtodo. Para maiores detalhes sobre o objeto String,
que permite maiores funcionalidades (e tambm maior custo de memria), veja o
artigo mais abaixo.
Exemplos
Todas as formas abaixo so declaraes vlidas de strings.
char Str1[15];
char Str2[8] = {'a','r','d','u','i','n','o'};
char Str3[8] = {'a','r','d','u','i','n','o','\0'};
char Str4[ ] = "arduino";
char Str5[8] = "arduino";
char Str6[15] = "arduino";
Inicie com uma constante de texto, contida entre aspas; o compilador vai
definir o tamanho do array de caracteres automaticamente, calculando o tamanho
da string mais o terminador nulo, conforme Str4
Inicie um array, deixando espao extra para strings com tamanhos maiores,
conforme Str6
Terminao Nula
Geralmente, strings so terminadas com um caractere nulo, (cdigo ASCII zero
[0]). Isto permite que funes (como a Serial.print()) conhecerem onde termina o
texto da string. Caso contrrio, essas funes continuariam a ler bytes da memria
que no fazem parte da string.
Isso significa que sua string precisa ter espao suficiente para um ou mais
caracteres alm do texto que voc deseja armazenar. por isso que a varivel Str2
e Str5 (acima) precisam de 8 caracteres, mesmo tendo a palavra arduino apenas
7 letras a ltima posio preenchida automaticamente com o caractere nulo.
Str4 ser automaticamente redimensionada para o tamanho de 8 caracteres, sendo
uma posio para o nulo. Na varivel Str3, ns declaramos explicitamente o
tamanho e adicionamos o caractere nulo ('\0') por nossa conta.
Veja que possvel ter uma string sem o caractere final nulo (por exemplo,
declarando a varivel Str2 com 7 ao invs de 8 caracteres). Isso falhar na maioria
das funes que esperam uma string para funcionar, portanto no faa isso
intencionalmente! Se voc perceber um comportamento diferente, como adio de
caracteres estranhos na sua string, este pode ser o problema.
Exemplo
char* myStrings[]={"This is string 1", "This is string 2", "This is
string 3",
"This is string 4", "This is string 5","This is string 6"};
void setup(){
Serial.begin(9600);
}
void loop(){
Objeto String
Descrio
A classe String, parte do Arduino desde a verso 0019, nos permite utilizar e
manipular strings de texto de uma maneira mais completa aos arrays de
caracteres. Voc pode concatenar textos, adicionar trechos de texto, pesquisar
expresses no texto e substituir trechos, e muito mais. Consome mais memria que
um simples array de caracteres, mas muito mais til.
Para referncia, arrays de caracteres so declarados como string com o s
minsculo, e instncias da classe String so declaradas como String, com a letra
S maiscula. Repare tambm que strings constantes, especificadas por aspas
duplas, so tratadas como arrays de caracteres, e no como instncias da classe
String.
Funes
String()
charAt()
compareTo()
concat()
endsWith()
equals()
equalsIgnoreCase()
getBytes()
indexOf()
lastIndexOf()
length()
replace()
setCharAt()
startsWith()
substring()
toCharArray()
toLowerCase()
toUpperCase()
trim()
Operadores
[] (element access)
+ (concatenation)
== (comparison)
Exemplos
StringConstructors
StringAdditionOperator
StringIndexOf
StringAppendOperator
StringLengthTrim
StringCaseChanges
StringReplace
StringCharacters
StringStartsWithEndsWith
StringComparisonOperators
StringSubstring
Traduo por Renato Aloi
Original em Ingls -- http://www.arduino.cc/en/Reference/String
Postado por Renato Aloi s 15:05 Um comentrio:
Marcadores: arduino, Curso Arduino Grtis Robtica Automao Robot Micro Controlador ATMega
Variveis Funes C Constantes HIGH LOW true false pinMode digitalRead digitalWrite
digitalWrite(PORTA_M, MOTOR);
delay(500);
}
delay(1000);
}