Referência: goto

Transfere o fluxo do programa para um outro ponto etiquetado

Sintaxe:

label:
//código ou não
goto label; // envia o fluxo do programa para label:

O uso do goto é desencorajado em programação C e inclusive alguns autores afirmam que o goto nunca é realmente necessário, mas usado com cautela pode simplificar alguns programas. A razão pela qual muitos programadores desaprovam seu uso é que com o uso indiscriminado é fácil de se criar um programa com um fluxo indefinido e muito difícil de ser depurado.


No entanto, há casos em que o goto pode ser útil e simplificar o código. Uma destas situações é provocar uma saída de um grupo de loops aglutinados ou de blocos lógicos if com uma determinada condição.

Exemplo:

for(byte r = 0; r < 255; r++){
    for(byte g = 255; g > -1; g--){
        for(byte b = 0; b < 255; b++){
            if (analogRead(0) > 250){ goto bailout;}
            // mais códigos...
        }
    }
}
bailout:

Voltar...

Nenhum comentário:

Postar um comentário