条件演算子の構文は、if−else文の構文によく似ている。 if ( 条件式 ) 真の場合の文 else 偽の場合の文 条件式 ? 真の場合の式 : 偽の場合の式
多くの場合、条件演算子は読みづらい。かわりに if-else文を使用するべきだと私は考えている。 例1
真偽値 bSuccess が真の場合には「成功」、偽の場合には「失敗」と出力する。 // 条件演算子を使用した場合 puts( bSuccess ? "成功" : "失敗" ); // if−else文を使用した場合 if ( bSuccess ) puts( "成功" ); else puts( "失敗" ); 例2
変数 x に、真偽値 bResult が真の場合には変数 a、偽の場合には変数 b を代入する。 // 条件演算子を使用した場合 x = ( bResult ? a : b ); // if-else文を使用した場合: if ( bResult ) x = a; else x = b; 例3
変数 x の値を真偽値 bResult が真の場合には変数 a に、偽の場合には変数 b に代入する。 // 条件演算子を使用した場合 *( bResult ? &a : &b ) = x; // if-else文を使用した場合: if ( bResult ) a = x; else b = x; | |