藤原です。 This message is reply to Henry of OB. - san (Subject was : [H8-ML(4734)] Re: [H8-ML(4733)] Re: if文の書き方) Message-ID: <000501c43647$0c34eeb0$4001a8c0@PCB> in Mon, 10 May 2004 13:27:04 +0900 ... > 脱線つでにもうひとつ! > > 頭が悪く、はっきりしてないと間違いやすい > 私の場合、 > > if(エラー条件1) > { エラー処理1 > } > else > { if(エラー条件2) > { エラー処理2 > } > else > { 正常処理 > } > } > > と、依存関係を明示的に書きます。 これは、文法上の形に従った書き方なわけですよね。 確かに文法的に言えば、 if (n == 1) { error(1); } else if (n == 2) { error(2); } else if (n == 3) { error(3); } else if (n == 4) { error(4); } else if (n == 5) { error(5); } else normal(); という書き方は、else のあとが1文であれば、{} は省略できる、とい うのとif 文は全体で1文として扱われるというのとを利用した、少々虚を ついた書き方に見えることでしょう。 しかし、これを、 if (n == 1) { error(1); } else { if (n == 2) { error(2); } else { if (n == 3) { error(3); } else { if (n == 4) { error(4); } else { if (n == 5) { error(5); } else { normal\(); } } } } } と比べたときに、わかりやすいのはどちらかということになると思います。 また、プログラマの思考が、もしも、 「エラー条件1でもなくエラー条件2でもなくエラー条件3が発生したとき」 でなく、 「(他の条件はどうあれ)エラー条件3が発生したとき」 に、エラー処理3をしたいのであれば、その発送を直接反映しているのはど ちらなのかということです。 これにかんしては、いわゆる、K&Rの、「The Programing Language C」 でも、IF - else とは別に、わざわざ、3-3 Else - if という項目をさいて 説明しています。 もっとも、字下げの問題なのでやっていることは同じですが。 -- _/ -- Last 2292 hours until ATHENS 2004 Olympic Games ----------------- _/ FUJIHARA Keiichi _/ E-Mail : keiichi@xxxxxxxxxxxxx <or> nagi@xxxxxxxxxxxxxxx _/ URL : http://www.keiichi.fujihara.name/ ----------------------------------------------+----- Luna Phase 20.87 -- PGP FingerPrint = 7CC3 4F95 8CC7 87D3 7178 C348 CD65 7F08 D68F 69F6