Maison  >  Article  >  développement back-end  >  La différence entre || et && en langage C

La différence entre || et && en langage C

下次还敢
下次还敢original
2024-04-27 23:18:30696parcourir

在 C 语言中,|| 运算符检查至少一个操作数为真则为真,而 && 运算符检查所有操作数都为真则为真。|| 会忽略后续真操作数,而 && 会在发现假操作数时停止计算。它们的优先级高于比较运算符,但低于赋值运算符。

La différence entre || et && en langage C

C 语言中 || 和 && 的区别

在 C 语言中,&& 和 || 是逻辑运算符,用于组合两个或多个布尔表达式。

||(逻辑或)

|| 运算符检查其操作数是否至少有一个为真:

  • 如果任何一个操作数为真,则结果为真。
  • 仅当所有操作数都为假时,结果才为假。

&&(逻辑与)

&& 运算符检查其操作数是否都为真:

  • 如果所有操作数都为真,则结果为真。
  • 仅当任何一个操作数为假时,结果才为假。

区别

|| 和 && 之间的关键区别在于它们对 False 操作数的行为:

  • || 即使一个操作数为真,也会忽略后续操作数。
  • && 只有在所有操作数都为真时才会计算结果。

示例

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 为真,所以 || 运算符忽略 b 和 c 的值。

在第二个示例中,因为 b 为假,所以 && 运算符停止计算并返回 False,即使 c 为真。

优先级

|| 和 && 的优先级高于比较运算符(==、!=、>、<、>=、<=),但低于赋值运算符(=)。

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn