Não consigo resolver este erro !
sketch_jan03a:56: error: a function-definition is not allowed here before '{' token
sketch_jan03a:303: error: expected '}' at end of input
a function-definition is not allowed here before '{' token
Tags:
Oi H, boa noite.
Post o seu code.
Mas post ou nos www.pastbin.com ou aqui na forma de arquivo anexado.
Rui
Fale Rui
É possível debugar essa imagem?
Acho que daria para usar switch-case.
Oi FH, bom dia.
Acho que dá sim.
Mas como falta o resto do code, fica difícil.
Não sei porque o amigo não postou o code todo em arquivo anexado.
Facilitaria a ajuda.
Tenha um bom sábado.
Rui
int velocidade(int velocidade)
{ if (velocidade == 1) {
return 25;
} else if (velocidade == 2) {
return 50;
} else if (velocidade == 3) {
return 100;
} else if (velocidade == 4) {
return 150;
} else if (velocidade == 5) {
return 250;
} else if (velocidade == 6) {
return 500;
} else if (velocidade == 7) {
return 1000;
} else if (velocidade == 8) {
return 1200;
} else if (velocidade == 9) {
return 1450;
} else if (velocidade == 10) {
return 1600;
} else if (velocidade == 11) {
return 1800;
} else if (velocidade == 12) {
return 2000;
} else {
return 500:
}
sketch_jan03a:55: error: a function-definition is not allowed here before '{' token
Como faço para tirar este erro !
Boa noite !
Nesse trecho está faltando uma chave, para fechar a função
Ou tem uma chave a mais....
Retire a primeira chave que está antes do if na primeira linha do código que vc enviou.
{ if (velocidade == 1) {
...
...
troque por:
if (velocidade ==1) {
...
...
Mas se esse código for uma função, faça como o Flaviio sugere, feche o bloco no final com "}"
O erro apontado pelo compilador:
sketch_jan03a:56: error: a function-definition is not allowed here before '{' token
sketch_jan03a:303: error: expected '}' at end of input
Sugere a correção:
a linha 56 deve ser a linha:
{ if (velocidade == 1) {
a linha 303 deve ser a última linha de seu sketch.
Você está pedindo à IDE do Arduino numerar as linhas do sketch ? Faça isso, vai ajuda-lo.
Agora que eu vi... não tinha aparecido o inicio do código na minha tela. É uma função:
int velocidade(int velocidade)
Dica: Nunca use para uma função o mesmo nome da variável; para o compilador, funções são variáveis. E supondo que o compilador aceite, não é boa prática de programação.
Faça assim então:
int trocaVelocidade(int velocidade) {
ou
int trocaVelocidade(int velocidade)
{
e feche a função com "}" conforme o Flavio já tinha sugerido:
return 500:
}
}
Acostume-se também a indentar seu código:
int trocaVelocidade (int velocidade) {
if (velocidade == 1)
return 25; //não precisa usar { } para uma única instrução
else if (velocidade == 2)
return 50;
.....
.....
return (500)
}
}
Cabe um switch / case nessa função... é menos eficiente que bloco if / else mas é mais elegante.
Estou com um problema, em partes, semelhante ao dele.
" void LerDados (WiFiClient novoCliente){ "
aparece o seguinte erro:
"error: a function-definition is not allowed here before '{' token"
Bom dia CK,
no sue code existe uma função assim: " void LerDados (WiFiClient novoCliente){ "
Não pode ter espaços entre os parâmetros da função.
Corrija com virgula : " void LerDados (WiFiClient , novoCliente){ "
Rui
Oi Rui,
Essa é uma definição de função; WiFiClient é o tipo do argumento "novoCliente".
O erro é outro.
Envie o código completo Ciros.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por