[PR]

条件演算子(?:)を使う

戻る

 条件演算子の構文は、if−else文の構文によく似ている。

	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;

Google
ご意見・ご感想をお聞かせ下さい。匿名で送信できます。

 * 返信が必要な場合には postmaster@katsura-kotonoha.sakura.ne.jp へ直接メールしてください。

水無瀬 優 postmaster@katsura-kotonoha.sakura.ne.jp

>> 扉の外 I / II / III