7. Instrukcje sterujące

7.3. Instrukcja wielokrotnego wyboru

Instrukcja wielokrotnego wyboru switch ma następującą składnię:


switch (wyrażenie) {
  case 1:
    ...
  break;
	  ...
  case n:
    ...
  break;
  default:
    ...
}

Wyrażenie, wg którego następuje różnicowanie wykonania musi być typu (dawać w wyniku) przeliczalnego. Zasadę wykonywania instrukcji switch zaprezentowaliśmy na rysunku poniżej:

Nie jest to działanie do końca zgodne z naszymi przewidywaniami. Po dokonaniu wyboru (wybraniu odpowiedniego case) jest wykonywany kod do wystąpienia break. Jeśli w trakcie wykonania pojawi się następny case – zostanie zignorowany. Ponieważ wnętrze bloków po case nie jest instrukcją złożoną – nie tworzą własnej przestrzeni zmiennych lokalnych. Z tego względu wewnątrz instrukcji switch nie można definiować stałych i zmiennych. Oczywiście jeśli blok instrukcji po case obejmiemy nawiasami klamrowymi – będziemy mogli wewnątrz zdefiniować zmienne.