C OR Logical Operator
C OR Logical Operator is used to compute logical OR operation between two boolean values. The operands to OR Operator can be boolean variables, or conditions that return a boolean value, or integers equivalent to the boolean values.
C OR Operator takes two boolean values as operands and returns an int value equivalent to the resulting boolean value .
operand_1 || operand_2
Truth Table
The truth table of OR Logical Operator is
Operand 1 | Operand 2 | Returns |
true | true | 1 |
true | false | 1 |
false | true | 1 |
false | false | 0 |
C OR returns true if at-least one of the operand is true.
Integer value of 1
is equivalent to true
, and 0
is equivalent to false
.
Examples
The following example demonstrates the usage of OR logical operator with different boolean values.
main.c
#include <stdio.h> #include <stdbool.h> int main() { bool x, y, result; x = true; y = true; result = x || y; printf("%d || %d : %d\n", x, y, result); x = true; y = false; result = x || y; printf("%d || %d : %d\n", x, y, result); x = false; y = true; result = x || y; printf("%d || %d : %d\n", x, y, result); x = false; y = false; result = x || y; printf("%d || %d : %d\n", x, y, result); }
Output
1 || 1 : 1 1 || 0 : 1 0 || 1 : 1 0 || 0 : 0 Program ended with exit code: 0
The following example demonstrates the usage of OR logical operator in combining boolean conditions and forming a compound condition.
main.c
#include <stdio.h> int main() { int a = 7; if ((a < 10) || (a % 2 == 0)) { printf("%d is even, or less than 10.\n", a); } }
Output
7 is even, or less than 10. Program ended with exit code: 0
In the above example, a < 10
is a condition that checks if a
is less than 10
and a % 2 == 0
is another condition that checks if a
is even number.
If we would like to check if either of the conditions a < 10
or a % 2 == 0
is true, we use OR Logical Operator.
Conclusion
In this C Tutorial, we learned what C OR Logical Operator is, and how to use it with conditional expressions.