椚座です。 On Wed, 16 Feb 2005 00:59:34 +0900 hisa <ahhisa@xxxxxxxxxxxxxxxx> wrote: > 例えば ピン入力として > > いくつものピン入力に応じて それに対応した処理 の場合 > > ピン1入力あり → 1の処理 > ピン2入力あり → 2の処理 > ピン3入力あり → 3の処理 わたしも switch を使うのが綺麗だと思います。 ただ,入力があったときにやるべきことが比較的たくさんある場合は, case のところに処理内容を書いたりすると,見にくくなるだけです。 なので,それぞれの入力について処理を請け負う関数を用意しておき, これを呼ぶだけにしておくと,かなりすっきりとします。 また,ピンの状態を調べるのにも何らかの手続きがいるでしょうから, 調べる関数を作っておいて,これを switch のところで呼ぶという 方法もあります。総合すると, int get_pin(void) { // ピンの状態を読む } switch (get_pin()) { case 1: pin1_asserted(); break; case 2: pin2_asserted(); break; case 3: pin3_asserted(); break; default: break; } Junsuke Kunugiza, jk@xxxxxxx