switch statement
Выполняет код, исходя из значения целочисленного аргумента.
Используется там, где одна или несколько ветвей кода должна быть выполнена в соответствии с полученным целочисленным значением.
Синтаксис
switch ( expression ) {
|
|||||||||
Объяснение
expression должно быть выражением, конвертируемым в целое число.
Все constant_expressions должны быть константными выражениями, конвертируемыми в целое число, которое является уникальным в пределах этого switch.
Если expression равно значению одного из определенных constant_expressioni, statementi (если имеется) и все последующие выражения (за исключением default_statement) выполняются. Если значение expression не соответствует ни одному из constant_expressions, выполняется default_statement, если оно есть.
Следует отметить, что если выполнение последующих веток нежелательно, нужно использовать оператор break. В этом случае выполнение switch-оператора завершается.
Ключевые слова
Пример
#include <stdio.h>
void func(int x)
{
printf("func(%d): ", x);
switch(x)
{
case 1: printf("case 1, ");
case 2: printf("case 2, ");
case 3: printf("case 3.\n"); break;
case 4: printf("case 4, ");
case 5: printf("case 5, ");
default: printf("default.\n");
}
}
int main(void)
{
for(int i = 1; i < 10; ++i) func(i);
}
Вывод:
func(1): case 1, case 2, case 3.
func(2): case 2, case 3.
func(3): case 3.
func(4): case 4, case 5, default.
func(5): case 5, default.
func(6): default.
func(7): default.
func(8): default.
func(9): default.