May
06

論理演算子??な名前不明なあれが気になって

よくソースコード中でみかけますx=x||0というような「||」。これの名前気になりませんか?私も気になって調べてみました。でも論理演算子という回答しか得られませんでした。

2015/6/25 追記: この記事は今より未熟だった頃の自分が書いた記事ですごく語弊があります。論理演算子が気になってという記事に書きなおしましたのでそちらを参照ください。

2015/7/17 追記: 演算子ノ全テで演算子についてまとめてみました。そちらも参照ください。

なぜ論理演算子だと不満なの

なんだかどちらかというと三項演算子(?と:を使うあれです)の仲間っぽいなーと思ったのと、かえってくる値が常にtrue or falseじゃないところが論理演算子っぽくないなーと思ったからです。

まあここまではどうでもいいのです。それより気になったのが、右辺にbreakを入れられないところです。関数・変数じゃないから??まあ確かに一応値を返すものという定義の元にはbreak返されても困るしあってる気がするのです。でも、ifの代用にも使えるのにbreakとか入れないと若干不便に感じます。

ちなみに右辺で変数に代入するときはかっこでかこまないといけないらしいですね。これも謎仕様の一つです。

a==b&&c=d//エラー がでます。
a==b&&(c=d)//こっちが正解

おわりに

この謎仕様、変わることはないと思います。今更変えると世界規模で混乱が生じますからね。悲しいことです。

Leave a Reply

Name *

Mail

URL

Comment *

※私が承認したコメントのみ表示されます。
トラックバック URL

×

この広告は1年以上新しい記事の投稿がないブログに表示されております。