簡単な質問ですみません。
code
bool flag=false;
if(flag==false){//処理1
flag=true;
}
else if(flag){//処理2
flag=false;
}
/code
仮に上のようなプログラムがあったとして、
最初は処理1が実行されますよね?そしてプログラムが終わると思ったのです。
でもその時flagがtrueになると、次の処理2がループの前に実行される気がするんですが…
実際のところどうなんでしょうか?
要するに、ifとelse ifの関係は、ifが行われるとそれ以降のelse ifは実行されなくなるのでしょうか?
if else ifについて
Re: if else ifについて
elseの意味を辞書で調べてみてください。
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: if else ifについて
bool flag=false;はプログラムが通る度に初期化されますので、どこに書いてあるかで動作が変わるでしょう。
【追記】
> 要するに、ifとelse ifの関係は、ifが行われるとそれ以降のelse ifは実行されなくなるのでしょうか?
そのためのelseですからね。以後に実行したいなら、そもそもelseもifも不要なんじゃないでしょうか。
【追記】
> 要するに、ifとelse ifの関係は、ifが行われるとそれ以降のelse ifは実行されなくなるのでしょうか?
そのためのelseですからね。以後に実行したいなら、そもそもelseもifも不要なんじゃないでしょうか。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: if else ifについて
本当は仕様書で確認するのがいいですが、1.4万円くらいするようなので、
とりあえずアセンブリを出力して見てみるといいかもしれません。
とりあえずアセンブリを出力して見てみるといいかもしれません。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)