answersLogoWhite

0

Answer
A "dangling else" is basically a bit of ambiguity as to how an if-then-else statement will be parsed - specifically, when the else clause should end.

A dangling else can look something like this:

void doStuff(int a) {

if(a == 10)
printf("TEN");

else
printf("NOT TEN");
a = 100;

}

The above code looks perfectly normal. If a is 10, then print "TEN" otherwise print "NOT TEN" and set a to 100.

With certain languages (C/C++ and Java included), that code would not quite work as described. The way the code is indented can make someone believe that it is doing something else.

According to the way C/C++ and Java would interpret the above code, it should look more like this:


void doStuff(int a) {

if(a == 10) {
printf("TEN");

}else {
printf("NOT TEN");

}

a = 100;

}

Which means that no matter what, a would be set to 100 at the end of the function call, which is not how the indentation made it look in the original example.

Keep in mind that both examples are identical in function if interpreted by a C/C++ or Java style compiler.

Answer
This problem arises with nested if-s:

if (cond1) if (cond2) stmt1; else stmt2;


It can be either

if (cond1) { if (cond2) stmt1; else stmt2; }


or

if (cond1) { if (cond2) stmt1; } else stmt2;


It is important to rembember that the compiler does not know which of those you meant, so it choose the first interpretation: the dangling else belongs to the inner if.

User Avatar

Wiki User

15y ago

What else can I help you with?

Related Questions

What is dangling if else problem?

The dangling else problem occurs when an if-else construct is ambiguous, and it is unclear which if statement should be associated with the else statement. This can lead to unintended behavior in the code if not handled properly. It is recommended to use braces to explicitly define the scope of if-else blocks to avoid this issue.


How do you use the word dangling in a sentence?

The climber was left dangling for his life on the edge of the cliff.She did not like the way the bracelet was dangling when she drove.Somehow, there is a sock dangling from the tree.


What are the disadvantages of nested if in C?

Nothing, but be careful with the dangling else's: if (cond1) if (cond2) stmt1; else stmt2; means: if (cond1) { if (cond2) stmt1; else stmt2; } not this: if (cond1) { if (cond2) stmt1; } else stmt2;


What is The dangling process which hangs from the soft palate and helps prevent food from entering the pharynx prematurely?

it's a uvula


What is the antonym of dangling?

The antonym of "dangling" could be "secure" or "fixed."


What is an antonym for dangling?

The antonym for dangle is dangling


What is a sentence for the word dangling?

The man was dangling from the bridge for his life


When was Dangling Man created?

Dangling Man was created in 1944.


What is dangling gerund?

dangling gerund is a form of verb that act as noun......


Why do gas tankers use a dangling metal chain to protect?

Gas tankers use a dangling metal chain to prevent static electricity build-up or discharge while filling the tank. This helps to reduce the risk of sparks igniting flammable gases or liquids.


Does this contain a dangling modifier After opening the door the night air rushed in?

There is A dangling sentence


What ear lobe is the dominant ear lobe attached or dangling?

Dangling earlobe is dominant.