Você está na página 1de 2

switch-case

Estrutura de controlo consiste numa seleco de vrios casos que


designada em c++ por switch-case.
A sua sintaxe :
switch (selector) {
case <valor 1> : <bloco de instrues 1> ;
[break];
case <valor 2> : <bloco de instrues 2> ;
[break];

[default : <bloco de instrues>; ]


}
A estrutura inicia-se com a palavra-chave switch, seguida de um selector, ou
seja, uma varivel ou expresso que, podendo assumir diferentes valores
consoante a execuo do programa, vai funcionar aqui como selector.
Isto quer dizer que o valor assumido por esta expresso ou varivel
determina o bloco de instrues a selecionar para ser executado.
Repare-se que, aps o inicio ou cabealho com o switch (selector), todo
o restante desta estrutura deve vir includo dentro das chavetas {}.
Dentro dessas chavetas so inseridos os virios casos de valores
assumidos pela varivel ou expresso selector.
Cada um destes casos inicia-se com a palavra case, seguida de um valor
que pode ser constante directa (como, por exemplo 1 ou 2,etc.) ou uma
expresso com valor conhecido no momento da avaliao.
Aps cada clusula comeada com case e o respectivo valor, surge um
sinal de dois pontos (:) e um bloco de instrues, o qual dever ser executado,
no caso de o valor do selector corresponder ao valor indicado nesta clusula.
Repare-se agora tambm no facto de, em C++, ser habitual inserir-se, no
final de cada bloco de instrues de cada clusula case, uma
instruobreak (que opcional).
Embora estas instrues break sejam opcionais, costume inseri-las
para quebrar (break) a sequncia de instrues da estrutura case nesse ponto,
pois, se no o fizermos, o programa continuar a executar as instrues
subsequentes da estrutura case.

No final dos vrios casos (case) de uma estrutura switch case,


podemos incluir, opcionalmente, uma clusula default, seguida de dois pontos
e um bloco de instrues para esta clusula.
Este bloco de instrues destina se a ser executado apenas no caso de o
valor do selector no corresponder a nenhum dos casos anteriormente
indicados.

Você também pode gostar