Tema anterior: La sentencia else ifTema siguiente: Declaraciones iterativas


La sentencia del conmutador

La sentencia del conmutador realiza una rama multiforma, que es útil cuándo todas las ramas de una sentencia condicional dependen de la misma variable. En este caso, es molesto comprobar el valor de la misma variable repetidamente utilizando múltiples sentencias if. La sentencia del conmutador utiliza la sintaxis siguiente para hacer lo mismo más eficazmente:

switch(variable) 
{
	case value_1:
		sentencias
	break;
	case value_2:
		sentencias
	Break
	...
	case value_n:
		sentencias
	Break
	default:
		sentencias
	Break
}

La sentencia del conmutador ejecuta el código dentro de la sentencia del caso que coincide con el valor actual de la variable. Si no hay ninguna coincidencia, la sentencia del conmutador ejecuta el código predeterminado o avanza hasta la sentencia siguiente si no hay ningún código predeterminado. Las declaraciones de interrupción opcionalmente delimitan un bloqueo de código de un caso del caso siguiente. A falta de una sentencia de interrupción, la ejecución va de un caso al siguiente. Esto es una acción legal, por lo que hay que tener cuidado de no omitir una sentencia de interrupción a menos que realmente pretenda que la ejecución fracase hasta la sentencia de caso siguiente.