Pergunta

Me deparei com uma situação estranha aqui é o que acontece.Estou usando um do while loop e excede uma função while mais uma vez após o freio.
Aqui está uma versão simplificada do que acontece:

int i = 0;
do{
if(i>=1) break;
}while(i++);

E depois disso i o valor é 2.Estou apenas curioso para saber se é assim que deveria ser ou cometi um erro em algum lugar da minha versão mais copmlex deste código.
Esta é uma solução fácil para isso, só preciso atribuir um para dizer um iTemp variável no início do wgile e use isso em vez de i.

P.S.eu estava usando dois do while faz um loop dentro do outro, talvez seja isso que causou isso?

EDITAR:Vamos lá pessoal, me dê um tempo, foi um erro de digitação.:D

Foi útil?

Solução

P.S.Eu estava usando dois loops do while, um dentro do outro, talvez seja isso que causou isso?

Poderia muito bem ser.A break (observe a grafia) só sairá do um loop, portanto, se estivesse dentro do loop interno, ele sairia desse loop, mas continuaria a execução imediatamente após o final do loop interno.No caso (bastante comum) do loop externo terminando imediatamente após o interno, você acabaria executando a condição do loop externo novamente.

Outras dicas

brake não é uma palavra-chave e sua versão modificada nem sequer é compilada.A versão antiga é executada, ou seja, sem o novo intervalo.

Solução:Usar break.


atualizar:

P.S.Eu estava usando dois loops do while, um dentro do outro, talvez seja isso que causou isso?

Sim. break apenas sai do loop mais interno em que está escrito.

A propósito, percebo que o loop exibido sempre será executado apenas uma vez.Sua condição de loop é i++, que incrementa i e te dá o valor antes o incremento.Antes do seu primeiro incremento, i é 0, portanto, sua condição de loop é 0 na primeira execução, portanto, é executado uma vez.

verifique seu break não brake?

int i = 0;
do
{    
 if(i>=1) 
    break;
}while(i++);

a condição de looping e as condições de bico são impensável."desculpe se pareço rude"

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top