C言語なら俺に聞け(入門篇)at TECH
C言語なら俺に聞け(入門篇) - 暇つぶし2ch839:デフォルトの名無しさん
06/07/15 09:19:20
>>838
直接の原因は、break は一つ外側の構文に対してしか作用しないこと。
switch 内で break しても、その switch の外側に抜けるだけ。
それで結局、for を抜け出せなくて無限ループになっている。
ネストされた構文から任意の場所に制御を渡したい場合は goto を使うか、
関数を書いてそれを呼ぶしかない。

あと、その case の書き方はやめておけ。
switch はフォールスルーと言って、break を書いておかないとその後の
case にある処理に突入してしまう。

for(;;){
switch(GetRandom(1,2)){
case 1:
b++;
break;
case 2:
goto end_for;
}
}
end_for: ;


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch