C言語における||と&&の違い

下次还敢
リリース: 2024-04-28 09:40:33
オリジナル
696 人が閲覧しました

C 言語では、|| 演算子はオペランドの少なくとも 1 つが true の場合に true となり、&& 演算子はすべてのオペランドが true の場合に true になります。 || は後続の true オペランドを無視しますが、&& は false オペランドが見つかった場合に評価を停止します。これらの優先順位は比較演算子よりも高くなりますが、代入演算子よりは低くなります。

C言語における||と&&の違い

#C 言語における || と && の違い

C 言語では、&& と || は論理的です2 つ以上のブール式を結合するために使用される演算子。

|| (論理和)

|| 演算子はオペランドの少なくとも 1 つが true かどうかを確認します:

    If any 1 つのオペランドが true の場合、結果は true になります。
  • 結果は、すべてのオペランドが false の場合にのみ false になります。

&(論理 AND)

&& 演算子は、オペランドが両方とも true であるかどうかを確認します。

    If すべての操作 If the数値がすべて true であれば、結果も true になります。
  • どちらかのオペランドが false の場合にのみ、結果が false になります。

違い

|| と && は、False オペランドを使用した場合の動作です。 true の場合、後続のオペランドは無視されます。

&& 結果は、すべてのオペランドが true の場合にのみ評価されます。
int a = 1, b = 0, c = 1;

printf("a || b || c: %d\n", a || b || c); // 输出:1
printf("a & b & c: %d\n", a & b & c); // 输出:0
ログイン後にコピー

最初の例では、a が true であるため、|| 演算子は b と c の値を無視します。 2 番目の例では、b が false であるため、&& 演算子は評価を停止し、c が true であっても False を返します。

優先順位

|| および && は比較演算子 (==、!=、>、<、>=、< ;=) よりも優先されます。ですが、代入演算子 (=) よりも低くなります。

以上がC言語における||と&&の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート