C言語の三項演算子(正式には条件演算子。C言語には項を三つ取る演算子はこれだけなので、単に三項演算子と呼ぶことがある)はとても便利な演算子だ。高校時代、K先輩とC言語で一番好きな演算子はやっぱり三項演算子でしょ!と意気投合したことは今でも忘れない。
でも、この三項演算子、わかりにくいから嫌いという人も世の中にはいるらしい。たまにそういう意見をWeb上で見かける。とても悲しいことだ。
三項演算子の使い方はとっても簡単。次の例は所得に応じて税率を求める式だ。
int tax_rate = (income < 1950000) ? 5 : (income < 3300000) ? 10 : (income < 6950000) ? 20 : (income < 9000000) ? 23 : (income < 18000000) ? 33 : 40;
正直これ以上説明はいらないんじゃないかと思う。
不明なところがあるとすれば、細かい優先順位や括弧付けの問題だろうか。その辺は見やすさとのかねあいもあり、多少好みが分かれるところでもある。