Chaves são uma parte essencial da linguagem de programação C. Elas são usadas em muitas construções diferentes, descritas abaixo, e isto pode algumas vezes ser confuso para iniciantes.
Uma chave abrindo "{" deve sempre ser seguida por uma fechando "}". Frequentemente nos referimos a esta condição como equilibrio entre as chaves. A IDE (integrated development environment ou ambiente de desenvolvimento integrado) do Arduino inclui uma característica prática para checar o equilibrio das chaves. Apenas com o selecionar de uma chave ou clicar no ponto imediatamente posterior faz com que sua companheira lógica seja destacada.
No presente momento esta característica é um pouco defeituosa e a IDE frequentemente encontrará (incorretamente) uma chave em um bloco de texto que tenha sido comentado.
Programadores principiantes e programadores vindos das linguagens C e do BASIC frequentemente consideram o uso das chaves confuso ou desalentador. Afinal as mesmas chaves substituem a sentença RETURN em uma subrotina(função), a sentença ENDIF em uma condicional e a sentença NEXT em um FOR.
Por que o uso das chaves é tão variado, é uma boa prática de programação digitar o fecha-chaves "}" logo após digitar o abre-chaves "{" quando estiver fazendo uma construção que as requer. Inserte então alguns "ENTER" entre as chaves e comece a digitar o código. Agindo assim suas chaves nunca ficarão desequilibradas.
Chaves desequilibradas causam erros de comilação bastante enigmáticos e que podem ser difíceis de rastrear em um programa longo. Por causa de seus usos variados, as chaves são também incrivelmente importantes para a sintaxe de um programa e mover uma chave uma ou duas linhas pode alterar completamente o seu significado.
Os principais usos das chaves
Funções
void myfunction(datatype argument){
sentença(s)
}
Loops
while (expressão booleana)
{
sentença(s)
}
do
{
sentença(s)
} while (expressão booleana);
for (inicialização; condição de término; expressão de incremento)
{
sentença(s)
}
Sentenças condicionais
if (expressão booleana)
{
sentença(s)
}
else if (expressão booleana)
{
sentença(s)
}
else
{
sentença(s)
}
Página de início da referência
Correções, sugestões, e nova documentação devem ser enviadas ao Forum.
O texto de referência do Arduino está baixo uma Licença Creative Commons Attribution-ShareAlike 3.0. Amostras de código utilizadas na referência foram deixados ao domínio público.
O conteúdo desta página é uma tradução para o português a partir do site original do Arduino.