EnglishРусский  

   Приложение

Реклама

Инсталлятор CreateInstall
Бесплатные и коммерческие инсталляторы

Конструкция выбора switch

Конструкция switch позволяет выполнить разные действия при разных значениях выражения. После ключевого слова switch следует исходное выражение, которое вычисляется и запоминается как switch-значение. Затем в фигурных скобках перечисляются конструкции case с всевозможными значениями и исходным кодом, который необходимо выполнить. У одного case может быть определено через запятую несколько возможных значений при которых он будет выполнен. После выполнения case блока с подходящим значением программа переходит к следующему за switch оператору. Остальные case блоки не проверяются.

switch a + b
{
   case 0, 1, 2
   {   ...   }
   case 3
   {   ...   }
   case 4,10,12
   {   ...   }
}

Если вы хотите выполнить какие-то действия в случае, если не один case блок не был выполнен, то вставьте в конец switch конструкцию default. Может быть только одна конструкция default и она должна стоять последней после всех case.

switch ipar
{
   case 2,4,8,16,32  
   {   ...   }
   case k, k + l
   {   ...   }
   default
   {
      ...
   }
}

Дополнительные возможности

Конструкцию switch можно использовать не только для числовых выражений, но и для любых типов поддерживающих операцию сравнения ==.

Наравне с case можно использовать метку label для безусловного перехода внутри switch. Метка установленная ниже ключевого слова case, позволяет зайти в соответствующий case-блок из другого блока case.

switch name
{
   case "John", "Steve"
   label a0
   {
      ...
   }
   case "Laura", "Vanessa"
   {
      ...
      if name == "Laura" : goto a0
   }
   default
   {
      ...
   }
}

Смотрите также

Редактировать