[Previous] [Up] [Next]
Go backward to Proposicion do
Go up to Top
Go forward to Proposiciones break y continue

Proposicion switch

SWITCH es una proposicion condicional multiple que generaliza a la proposicion IF-ELSE.

Lo siguiente es un ejemplo tipico de SWITCH:

        switch (c) {
        case 'a':
             ++a_cnt;
             break;
        case 'b':
             ++b_cnt;
             break;
        case 'c':
        case 'C':
             ++cC_cnt;
             break;
        default:
             ++otros_cnt;
        }
Observese que en este ejemplo toda la proposicion SWITCH esta encerrada entre llaves; esto sera asi en todas las situaciones, excepto en las mas descuidadas. Se evalua la expresion entera que sigue SWITCH y se efectuan las conversiones aritmeticas usuales; el resultado debe ser un INT. En este ejemplo, la expresion es la variable CHAR c. Despues de evaluar la expresion, el control salta a la etiqueta apropiada CASE. Todas las etiquetas de los casos deben ser exclusivas, y cero, una o mas etiquetas de caso pueden preceder a cada proposicion. Por lo comun, la ultima proposicion antes de la siguiente etiqueta es BREAK. Si no hay una proposicion BREAK, la ejecucion "cae hasta" la siguiente proposicion en el caso que sigue. La ausencia de proposiciones BREAK es una causa frecuente de error en el uso de SWITCH. Por ultimo, puede haber una proposicion etiquetada DEFAULT. Esto indica que que si la evaluacion de SWITCH no coincide con ninguna etiqueta, entonces toma en cuenta el DEFAULT.

spy@inf.utfsm.cl

[Previous] [Up] [Next]