2011年1月13日木曜日

?:(クエスチョン、コロン)の3項演算

たまに見かけるこれ、

 式1?式2:式3

3項演算というらしい。
式1の結果がTRUEなら式2実行、式3無視。
式1の結果がFALSEなら式3実行、式2無視という動き。
式1の結果は必ずBoolean型でないと駄目。

int c = ( a>b ? a+b : a-b);
NSLog(@"c=%d",c);

a=3,b=2の時、cは5
a=2,b=3の時、cは-1
となる。