雑記
かっこつける話2
最終更新:
匿名ユーザー
-
view
C言語の、式の中の括弧は演算の優先順位を決定することができる。
ここらへんは、まあ、通常の算数なんかの式と同じ。
C言語には演算子の優先順位というものがある。
しかし、それに依存した書き方は、とても不親切で、ソースを読みにくくする要因となる。
しかし、それに依存した書き方は、とても不親切で、ソースを読みにくくする要因となる。
例えば、if(A == B = C)なんて書くと、とても見にくい。
「BにCを代入して、Aと比較」なんだから、if(A == (B = C))と書くべきだ。
「BにCを代入して、Aと比較」なんだから、if(A == (B = C))と書くべきだ。
それこそ、かっこつけて「俺は演算子の優先順位なんて頭にはいっちゃってるから」なんて、括弧をつけないでコーディングしちゃうと後でそれを見直す自分も、後でそれをメンテする人も困ることになる。
だいたい、最近のコンパイラはちゃんとANSIなりISOなりに準拠しているけど、ちょっと前のコンパイラなんて「処理系依存」が当たり前にはびこっていた。当然、演算子の優先順位なんてのも、コンパイラの実装依存だったりしたわけで。
これを昔話と侮ってはいけない。場合によってはそういうターゲットの開発に携わることだってあるんだから。