宙ぶらりんelse問題(dangling else problem)
宙ぶらりんelse問題(dangling else problem)[wikipedia]。
if文でthen節にifが重なる場合、続くelse節が前者のifのものか、 後者のifものか決定できる要素がない。調べもの中に見つけたのでメモ.
つまり上の文(C言語例)だと
と
どちらかわからない。 通常、then節のブロックを明示してどちらか決定する。
if (a) if (b) c; else d;
if (a) {
if (b) c; else d;
}
if (a) {
if (b) c;
}
else d;