# Relational Operators

suggest change

Relational operators check if a specific relation between two operands is true. The result is evaluated to 1 (which means true) or 0 (which means false). This result is often used to affect control flow (via `if`, `while`, `for`), but can also be stored in variables.

## Equals “==”

Checks whether the supplied operands are equal.

```1 == 0;         /* evaluates to 0. */
1 == 1;         /* evaluates to 1. */

int x = 5;
int y = 5;
int *xptr = &x, *yptr = &y;
xptr == yptr;   /* evaluates to 0, the operands hold different location addresses. */
*xptr == *yptr; /* evaluates to 1, the operands point at locations that hold the same value. */```

Attention: This operator should not be confused with the assignment operator (`=`)!

## Not equals “!=”

Checks whether the supplied operands are not equal.

```1 != 0;         /* evaluates to 1. */
1 != 1;         /* evaluates to 0. */

int x = 5;
int y = 5;
int *xptr = &x, *yptr = &y;
xptr != yptr;   /* evaluates to 1, the operands hold different location addresses. */
*xptr != *yptr; /* evaluates to 0, the operands point at locations that hold the same value. */```

This operator effectively returns the opposite result to that of the equals (`==`) operator.

## Not “!”

Check whether an object is equal to `0`.

The `\!` can also be used directly with a variable as follows:

`!someVal`

This has the same effect as:

`someVal == 0`

## Greater than “>”

Checks whether the left hand operand has a greater value than the right hand operand

```5 > 4      /* evaluates to 1. */
4 > 5      /* evaluates to 0. */
4 > 4      /* evaluates to 0. */```

## Less than “<”

Checks whether the left hand operand has a smaller value than the right hand operand

```5 < 4      /* evaluates to 0. */
4 < 5      /* evaluates to 1. */
4 < 4      /* evaluates to 0. */```

## Greater than or equal “>=”

Checks whether the left hand operand has a greater or equal value to the right operand.

```5 >= 4      /* evaluates to 1. */
4 >= 5      /* evaluates to 0. */
4 >= 4      /* evaluates to 1. */```

## Less than or equal “<=”

Checks whether the left hand operand has a smaller or equal value to the right operand.

```5 <= 4      /* evaluates to 0. */
4 <= 5      /* evaluates to 1. */
4 <= 4      /* evaluates to 1. */```

Feedback about page:

Feedback:
Optional: your email if you want me to get back to you:

Table Of Contents