ID非公開

2020/9/17 16:08

11回答

C言語の質問です。 この書き方は間違っていますか?スイッチの式をcaseの中で変えるのです。 breakがあるので問題ないと思うのですが。 int x;

C言語の質問です。 この書き方は間違っていますか?スイッチの式をcaseの中で変えるのです。 breakがあるので問題ないと思うのですが。 int x; x を規定する部分は省略 switch(x){ case 1: x = 2; break; case 2: x = 1; break; }

C言語関連14閲覧xmlns="http://www.w3.org/2000/svg">100

ベストアンサー

0

switch()の内部で、評価する変数を書き換えるのは『バグの素』なのでNGです。 switch()は、一つの変数(関数の戻り値なども含む)を評価するものであり、その変数の値を変更したり、複数の変数の評価をする場合にはif()を使用します。また、switch()入れ子にしたりcase : ~ break;のスペースに長々と処理を書かないようにしましょう。 1年後に自分自身でプログラムをみて、何が書いてあるのか判読困難なのは最低です。 またGoToキャンペーンではありませんが、if()を何重にも入れ子にするより、goto文で後方に飛ばしたほうが、遥かにプログラムが読みやすくなります。

ThanksImg質問者からのお礼コメント

ありがとうございました。

お礼日時:9/17 16:56