C言語での?:の使用法

下次还敢
下次还敢オリジナル
2024-04-27 22:24:191158ブラウズ

C 言語の ?: 演算子は、三項条件演算子とも呼ばれ、条件 (条件 true_expression : false_expression) に従ってさまざまなコード ブロックを実行します。まず条件を評価し、それが真の場合は真のコード ブロックを実行し、それ以外の場合は偽のコード ブロックを実行して、対応する値を返します。具体的な用途としては、条件付き代入、if-else ステートメントの簡素化、関数パラメータとしての機能、さまざまな型への値の代入などが挙げられます。式の型の互換性に注意し、条件が正しく評価されるように括弧を使用してください。

C言語での?:の使用法

C 言語での ?: 演算子の使用法

?: 演算子は、三項条件演算子とも呼ばれ、条件に基づいてさまざまなコード ブロックを実行するために C 言語で使用されます。その構文は次のとおりです。

<code class="c">condition ? true_expression : false_expression;</code>

ここで:

  • condition は、どのコード ブロックを実行するかを決定するブール式です。
  • true_expression は、conditiontrue の場合に実行されるコード ブロックです。
  • false_expression は、conditionfalse の場合に実行されるコードのブロックです。

動作原理:

?: 演算子は、true## の場合、最初に condition を評価します。 # の場合は true_expression を実行し、それ以外の場合は false_expression を実行します。 condition が true か false かに応じて、true_expressionfalse_expression のいずれかの値を返します。

具体的な使用法:

?: 演算子はさまざまなシナリオで使用できます。たとえば、次のとおりです。 ##条件付き代入:

    <code class="c">int x = condition ? 10 : 20;  // x 将被赋值为 10 或 20</code>
  • 簡略化された if-else ステートメント:

  • <code class="c">condition ? printf("True") : printf("False");  // 输出 "True" 或 "False"</code>
  • 関数パラメータとして:

  • <code class="c">int max(int a, int b) {
      return a > b ? a : b;  // 返回 a 和 b 中较大的一个
    }</code>
  • さまざまなタイプを割り当てる:

  • <code class="c">int x = condition ? 10.0 : 20;  // x 将是浮点数或整数,具体取决于 condition</code>
  • 注:

  • true_expression

    false_expression
      の型は互換性がある必要があります。
    • ?: 演算子は代入演算子よりも優先順位が高いため、条件が正しく評価されるように括弧を使用する必要があります。

    以上がC言語での?:の使用法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    声明:
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。