Čo je prepínač?
Príkaz switch pomáha pri testovaní rovnosti premennej voči množine hodnôt. Každá porovnávaná hodnota je známa ako prípad.
Vidieť prepínač ako vyhlásenie viaccestnej vetvy. Vykonanie programu môžete presunúť do rôznych častí na základe hodnoty výrazu.
V tomto výučbe pre C ++ sa naučíte:
- Čo je prepínač?
- Kedy použiť prepínač?
- Prestávka Kľúčové slovo
- Syntax
- Príklad 1
- Príklad 2
Kedy použiť prepínač?
Prepínač je podobný ako v prípade
... inak ... ak rebrík. Generuje však čistejší a ľahko pochopiteľný kód. Prepínač je tiež rýchlejší v porovnaní s rebríkom keby ... inak ... ak. Príkaz switch použite, keď potrebujete porovnať hodnotu premennej s množinou ďalších hodnôt.Prestávka Kľúčové slovo
Kľúčové slovo break sa používa vo vnútri príkazu switch. Zabráni spusteniu kódu v nasledujúcom prípade. Ukončí postupnosť príkazov.
Keď kompilátor C ++ narazí na kľúčové slovo break, vykonanie switchu sa ukončí a riadenie skočí na riadok, ktorý nasleduje za príkazom switch. Použitie príkazu break v prepínači je voliteľné. Ak sa nepoužije, poprava pokračuje v ďalšom prípade.
Syntax
Tu je syntax príkazu switch:
switch (variable){case 1:break;case 2:break;default:}
Vyššie uvedené parametre sú vysvetlené nižšie:
- Premenná: Toto je premenná, pre ktorú sa má vykonať porovnanie.
- Prípad: Existuje veľa prípadov. Každá porovnáva premennú s inou hodnotou.
- Zlom: Toto kľúčové slovo znemožňuje pokračovanie vykonania na vyhlásenie ďalšieho prípadu.
- Predvolené: Toto je voliteľné. Uvádza, čo sa má robiť, hodnota premennej sa nezhodovala so žiadnym prípadom.
Príklad 1
#includeusing namespace std;int main(){int x = 20;switch (x){case 10:cout<<"X is 10"; break;case 20:cout << "X is 20"; break;case 30:cout << "X is 30"; break;default:cout<<"X is not 10, 20 or 30"; break;}return 0;}
Výkon:
Tu je snímka obrazovky s kódom:
Vysvetlenie kódu:
- Vrátane súboru hlavičiek iostream v našom kóde. Umožní nám to čítať z konzoly a zapisovať do nej.
- Vrátane štandardného menného priestoru, aby bolo možné používať jeho triedy a funkcie bez jeho volania.
- Volanie funkcie main (), do ktorej by mala byť pridaná logika programu.
- Značka {označuje začiatok tela funkcie main ().
- Deklarovanie premennej x a jej inicializácia na 20.
- Pomocou príkazu switch a odovzdania argumentu x. To znamená, že musíme porovnať hodnotu premennej x so súborom ďalších hodnôt.
- Značka {označuje začiatok tela prepínača.
- Porovnanie hodnoty premennej x s hodnotou 10.
- Príkaz, ktorý sa má vykonať, ak je vyššie uvedený prípad pravdivý, to znamená, ak x je 10. Koniec zabráni pokračovaniu vykonania k ďalšiemu prípadu.
- Porovnanie hodnoty premennej x s hodnotou 20.
- Príkaz, ktorý sa má vykonať, ak je vyššie uvedený prípad pravdivý, to znamená, že ak je x 20. Koniec zabráni pokračovaniu vykonania k ďalšiemu prípadu.
- Porovnanie hodnoty premennej x s hodnotou 30.
- Príkaz, ktorý sa má vykonať, ak je vyššie uvedený prípad pravdivý, to znamená, ak je x 30. Prestávka zabráni pokračovaniu vykonania k ďalšiemu prípadu.
- Predvolené nastavenie nám pomáha určiť, čo treba urobiť, ak hodnota premennej x nie je 10, 20 alebo 30.
- Výrok, ktorý sa má vykonať, ak vyššie uvedené prípady nie sú pravdivé, to znamená, ak x nie je 10, 20 alebo 30.
- Koniec textu vyhlásenia o zmene.
- Funkcia main () by mala vrátiť hodnotu, ak program funguje dobre.
- Koniec tela hlavnej () funkcie.
Príklad 2
#includeusing namespace std;int main() {int choice;cout << "Enter 1, 2 or 3: ";cin>> choice;switch (choice){case 1:cout << "Choice 1"; break;case 2:cout << "Choice 2"; break;case 3:cout << "Choice 3"; break;default:cout << "Not 1, 2 or 3"; break;}}
Výkon:
Tu je snímka obrazovky s kódom:
Vysvetlenie kódu:
- Vrátane súboru hlavičiek iostream v našom kóde. Umožní nám to čítať z konzoly a zapisovať do nej.
- Vrátane štandardného menného priestoru, aby bolo možné používať jeho triedy a funkcie bez jeho volania.
- Volanie funkcie main (), do ktorej by mala byť pridaná logika programu. Značka {označuje začiatok tela funkcie main ().
- Deklarovanie celočíselnej premennej s názvom choice.
- Tlač textu na konzole.
- Vyzývanie používateľa na zadanie hodnoty voľby.
- Použitie príkazu switch a odovzdanie voľby argumentu. To znamená, že musíme porovnať hodnotu voľby premennej so súborom ďalších hodnôt.
- Značka {označuje začiatok tela prepínača.
- Porovnanie hodnoty výberu premennej s hodnotou 1.
- Príkaz, ktorý sa má vykonať, ak je vyššie uvedený prípad pravdivý, to znamená, ak je voľba 10. Koniec zabráni pokračovaniu vykonania k ďalšiemu prípadu.
- Porovnanie hodnoty výberu premennej s hodnotou 2.
- Príkaz, ktorý sa má vykonať, ak je vyššie uvedený prípad pravdivý, to znamená, ak je voľba 2. Koniec zabráni pokračovaniu vykonania k ďalšiemu prípadu.
- Porovnanie hodnoty výberu premennej s hodnotou 3.
- Príkaz, ktorý sa má vykonať, ak je vyššie uvedený prípad pravdivý, to znamená, ak je voľba 3. Koniec zabráni pokračovaniu vykonania k ďalšiemu prípadu.
- Predvolené nastavenie nám pomáha určiť, čo treba urobiť, ak hodnota výberu premennej nie je 1, 2 alebo 3.
- Výrok, ktorý sa má vykonať, ak vyššie uvedené prípady nie sú pravdivé, to znamená, ak výber nie je 1, 2 alebo 3.
- Koniec textu vyhlásenia o zmene.
- Koniec tela hlavnej () funkcie.
Zhrnutie
- Príkaz switch nám pomáha vytvoriť jednoduchý, ak ... iný ... ak rebrík.
- Príkaz switch má jasnú a jednoduchú syntax, ako keby ... else ... if ladder.
- Príkaz switch by sa mal použiť, keď potrebujete porovnať hodnotu premennej s množinou ďalších hodnôt.
- Hodnoty sa pridávajú k výpisom prípadov.
- Kľúčové slová prerušenia zastavia pokračovanie vykonania v nasledujúcom prípade.
- Ak sa nezhoduje žiadny prípad, použije sa voliteľná predvolená časť na uvedenie akcie, ktorá sa má vykonať.