User manual

68
4.4.6. Switch Case
Často budeme muset porovvat proměnnou s velm množstvím různých hodnot a na základě
výsledku porovnání rozhodnout o dalším provádění programu. Samozřejmě můžeme použít
větší počet podmíněných příkazů if then else, ale programovací jazyk C nabízí mnohem
elegantnější metodu pomocí konstrukce switch else.
Malý příklad:
Tento úryvek programu funguje docela podobně jako předchozí příklad podmíně struktury
ifelse if else if else..., ale nyní místo ní použijeme větvení case. Je zde jeden základní
rozdíl pokud je jedna z podmínek pravdivá, provedou se echny sledující případy větvení
case. Pokud nechcete takové chování jednoduše přite instrukci break a v tomto místě se
opuskonstrukce switch case.
Výstup předchozího příkladu by měl vypadat takto (pří výchozí hodnotě x = 3):
x=3
Hello
over
there!
Nastavením x = 1 bude sledný výstupx=1\n a při x = 5 bude výsledek:
over
there!
Nyní jste již mož pochopili, že instrukce break ukončí větvení case, program brouz přes
sledující příkazy, dokud se neobjeví konec konstrukce switch nebo další break.
Pokud nastavíme hodnotu x = 7, nebude žádné větvení pravdivé. Program nyní provede větvení
default, které má za výsledek stup: "The value of x is something else!\n".
Texto výstup je samozřejmě pouhý příklad, reál programy ak mohou tyto konstrukce
používat pro vytvoření řady odlišných pohybů robota. Několik ukázkových programů na použití
konstrukce switch case je uvedeno při realizaci konečných stavových automatů
k implementaci jednoducho chování základní jednotky robotu.