椚座です。
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