The dangling else er et problem i computerprogrammering, hvor en valgfri else-klausul i en if–then(–else) - udsagn resulterer i, at indlejrede betingelser er tvetydige Formelt set er referencen kontekstfri grammatik i sproget er tvetydig, hvilket betyder, at der er mere end ét korrekt parsetræ.
Hvordan er den dinglende ellers tvetydighed løst i C ++?
Java, C og C++ har valgt at løse Dangling-Else tvetydigheden bruger følgende regel: Et andet nøgleord associeres altid med det nærmeste foregående, hvis nøgleord, der IKKE forårsager en syntaksfejl.
Hvordan er den dinglende ellers tvetydighed løst i Java?
Tvetydigheden, der opstår, hvis et sprog tillader konstruktioner af formen, hvis b1, så hvis b2, så S1 ellers S2, hvor det ikke er klart, hvilket hvis der er forbundet med det andet. Algol 60 løste tvetydigheden ved at forbyde brugen af if umiddelbart efter; Pascal, C, C++ og Java forbinder det andet med det inderste if.
Hvad er problemet med at dingle ellers, hvornår opstår det?
Når antallet af if-sætning er mere eller mindre, så opstår der forvirring af else-sætningen ved matchning af compileren.. det såkaldte problem dingler andet. Det kan overvindes ved brug af seler.
Hvilke af følgende udsagn skaber problemet med dinglende andet?
Dangling else-problemet opstår ofte, når der er en if-udsagn uden tilstedeværelsen af en sand eller en falsk udsagn. En switch-sætning uden en standard forårsager ikke det dinglende andet-problem. Dette problem opstår hovedsageligt på grund af indlejrede if-sætninger.