重複の可能性:
3 進にするか、3 進にしないか?
今日、私の C の本を読んでいるときに、小さな宝石に出くわしました:?
演算子です。これは、天気に基づいた if else ステートメントのように機能する三項演算子であり、ステートメントが true または false ではありません。
どうやら、?
演算子を使用する方が効率的であると思われます。
次のコードでは、if / else ステートメントを使用しています (失敗時に somefunc が NULL を返すと仮定します)。
foo = somefunc();
if(foo) printf("\nFunction Suceeded!");
else printf("\nFunction Failed!");
これはコードは最初のものと同じですが、?
演算子を使用しています:
somefunc() ? printf("\nFunction Suceeded!") : printf("\nFunction Failed!");
ほとんどの場合、これが役に立たないことはわかりますが、if / else ステートメントの代わりにこれを簡単に使用できる例を数え切れないほど見てきました。
この方法を使用することは良い習慣ですか?