Forskel mellem if-else og switch

Forfatter: Laura McKinney
Oprettelsesdato: 3 April 2021
Opdateringsdato: 5 Kan 2024
Anonim
EPISODE 1 | VLAD | DROП
Video.: EPISODE 1 | VLAD | DROП

Indhold


“If-else” og “switch” er begge markeringsangivelser. Udvælgelsessætningerne overfører programmets strøm til den bestemte blok af sætninger baseret på om betingelsen er "sand" eller "falsk". Den grundlæggende forskel mellem udsagn om ellers og skifte er, at hvis ellers udsagn "vælger udførelsen af ​​udsagnene baseret på evalueringen af ​​udtrykket i hvis udsagn". Skiftangivelserne "vælger udførelsen af ​​udsagnet ofte baseret på en tastaturkommando".

  1. Sammenligningstabel
  2. Definition
  3. Vigtige forskelle
  4. Konklusion

Sammenligningstabel

Grundlag for sammenligninghvis ellerskontakt
GrundlæggendeHvilken udsagn, der vil blive udført, afhænger af output af udtrykket inde i sætningen.Hvilken erklæring der skal udføres afgøres af brugeren.
Ekspressionif-else-erklæring bruger flere sætninger til flere valg.switch statement bruger et enkelt udtryk til flere valg.
Testif-else-erklæringstest for lighed såvel som for logisk udtryk.skift erklæring test kun for lighed.
Evalueringhvis sætning evaluerer heltal, karakter, markør eller flydende type eller boolsk type.switch-sætning evaluerer kun tegn- eller heltalværdi.
Sekvens af henrettelseEnten hvis udsagn vil blive udført, eller ellers udførelse af erklæring.skifteerklæring udfør en sag efter den anden, indtil der vises en pauseerklæring, eller slutningen af ​​switcherklæringen er nået.
StandardudførelseHvis betingelsen inde i, hvis udsagn er falsk, udføres den anden erklæring som standard, hvis den oprettes.Hvis betingelsen i switch-sætningerne ikke stemmer overens med nogen af ​​tilfældene, udføres standardopgørelserne for dette tilfælde, hvis de oprettes.
RedigeringDet er vanskeligt at redigere if-else-sætningen, hvis den indlejrede if-else-sætning bruges.Det er let at redigere switch cases, da de genkendes let.

Definition af hvis-andet

Hvis ellers-udsagnene hører til udvælgelsesangivelser i OOP. Den generelle form for påstande om ellers er som følger


if (udtryk) {erklæring (er)} andet {erklæring (er)}

hvor "hvis" og "andet" er nøgleordene, og udsagnene kan være en enkelt sætning eller en blok sætninger. Udtrykket vurderer at være "sandt" for enhver værdi, der ikke er nul, og for nul evalueres den for at være "falsk".
Udtrykket i hvis sætning kan indeholde et heltal, tegn, markør, flydende punkt, eller det kan være en boolsk type. Den anden erklæring er valgfri i en hvis-anden erklæring. Hvis udtrykket returnerer sandt, udføres udsagnene inde i hvis udsagn udføres, og hvis det returnerer forkert, udføres udsagnene inde i andet sæt, og i tilfælde af at en anden erklæring er en ikke oprettet, udføres ingen handling, og kontrollen af ​​programmet hopper ud af en hvis ellers erklæring.

Lad os forstå med et eksempel.

int i = 45, j = 34; if (i == 45 & j == 34) {cout << "i =" <

Definition af switch

Skiftangivelserne er en valgfri erklæring med flere valg. Den generelle form for switch-erklæringen er som følger

switch (udtryk) {case constant1: statement (s); pause; sag konstant2: erklæring (er); pause; sag konstant3: erklæring (er); pause; . . standarderklæring (er); }

Hvor udtrykket evaluerer et heltal eller en karakterkonstant. Udtrykket her evaluerer kun for lighed. Udtrykket verificeres overfor de konstanter, der er til stede i sagens udsagn. Hvis der findes en match, udføres udsagnene, der er knyttet til den sag, indtil der opstår en "pause". Da break-erklæringen er valgfri i sagsangivelserne, hvis break-erklæringen ikke er til stede, stopper eksekveringen først inden afslutningen af ​​switch-erklæringen.
Udtrykket indeholder kun et enkelt udtryk. Switch-sætningen bruger ofte en tastaturkommando til at vælge en blandt de flere sagsangivelser.

int c; cout << "vælg værdien fra 1 til 3"; cin >> i; skifte (i) {sag 1: cout << "du vælger mørk choclate"; pause; sag 2: cout << "du vælger slik"; pause; sag 3: cout << "du vælger lollypop"; pause; . . standard cout << "du vælger intet"; }

Her bestemmer værdien af ​​"i", hvilken sag der skal udføres, hvis en bruger giver værdien af ​​"i" bortset fra 1, 2 eller 3, udføres standardsagen.

  1. Udtryk inde, hvis udsagn, beslutter, om udsagnene skal udføres inde, hvis blok eller under andet blokeres. På den anden side bestemmer udtrykket i switch-erklæringen, hvilken sag der skal henrettes.
  2. Du kan have flere, hvis udsagn for flere valg af udsagn. I switch har du kun et udtryk for flere valg.
  3. If-esle-erklæring kontrollerer for lighed såvel som for logisk udtryk. På den anden side kontrollerer switch kun for lighed.
  4. If-sætningen evaluerer heltal, karakter, markør eller flydende punkttype eller boolsk type. På den anden side evaluerer switch statement kun tegn eller en heltal datatype.
  5. Sekvens af eksekvering er som enten udsagn under hvis blokering vil blive kørt eller udsagn under andet blokerklæring vil blive kørt. På den anden side bestemmer udtrykket i switch-erklæring, hvilken sag der skal udføres, og hvis du ikke anvender en break-erklæring efter hvert tilfælde, udføres det indtil slutningen af ​​switch-erklæringen.
  6. Hvis udtrykket inde, hvis det viser sig at være falsk, udføres udsagn inden for anden blok. Hvis udtryk i switch-sætningen viser sig at være falsk, udføres standardangivelser.
  7. Det er vanskeligt at redigere udsagn om ikke-andet, da det er trættende at spore, hvor korrektionen er påkrævet. På den anden side er det let at redigere switch-udsagn, da de er lette at spore.

Konklusion:

Skifterklæringen er let at redigere, da den har oprettet separate sager for forskellige udsagn, hvorimod det i indlejrede, hvis ellers udsagn bliver vanskeligt at identificere udsagn, der skal redigeres.