Source : Free On-Line Dictionary of Computing
switch statement
(Or case statement, multi-way branch) A
construct found in most {high-level languages} for selecting
one of several possible blocks of code or branch destinations
depending on the value of an expression. An example in {C} is
switch (foo(x, y))
{
case 1: printf("Hello\n"); /* fall through */
case 2: printf("Goodbye\n"); break;
case 3: printf("Fish\n"); break;
default: fprintf(stderr, "Odd foo value\n"); exit(1);
}
The break statements cause execution to continue after the
whole switch statemetnt. The lack of a break statement after
the first case means that execution will {fall through} into
the second case. Since this is a common programming error you
should add a comment if it is intentional.
If none of the explicit cases matches the expression value
then the (optional) default case is taken.
A similar construct in some {functional languages} returns the
value of one of several expressions selected according to the
value of the first expression. A distant relation to the
modern switch statement is {Fortran}'s {computed goto}.
(1997-01-30)