sábado, 6 de abril de 2013

O comando break

O break é um comandinho muito especial. Como ele mesmo já diz, ele para. Não importa o que o programa esteja fazendo, ao se deparar com um break, a execução atual para.
É um comando indispensável no switch case. Se não houver um break ao fim de cada caso, o programa simplesmente terminará um e entrará no próximo. Você pode deixar sem break num caso estratégico, por exemplo:
//(...)
case 's':
case 'S': //comandos
break;
Mas atenção: o break para a estrutura de repetição ou condicional que o contém. Então, se você tem 500 for, (ou while ou if ou o que for) um dentro do outro, e no mais interno você dá um break, então parabéns, agora você tem 499.
Para parar comandos aninhados, eu utilizaria variáveis de "aviso" (flags) para controlar as estruturas externas, e as modificaria dentro da estrutura que identifica o momento de parar. Flags não são um tipo de variável, são apenas variáveis de controle para o programador. Por exemplo, pode-se ter um boolean flag = false; e, quando ele passar para true, algo para (ou executa). Ou pode-se ter uma variável int flag = 1; e, quando ele for 2 faz uma coisa e se for 3 faz outra. A seu critério.

BÔNUS:
existe também o comando continue, que para a estrutura naquele momento e volta ao seu início. Atenção para o caso dos while, a variável da condição DEVE SER MODIFICADA ANTES DO COMANDO CONTINUE. Caso contrário, você vai entrar em loop infinito.

Nenhum comentário:

Postar um comentário