C Operators
Operators
Operators are used to perform operations on variables and values.
In the example below, we use the +
operator to add together two values:
Example
int myNum = 100 + 50;
Although the +
operator is often used to add together two values, like in the example above, it can also be used to add together a variable and a value, or a variable and another variable:
Example
int sum1 = 100 + 50; // 150 (100 + 50)
int sum2 = sum1 + 250; // 400 (150 + 250)
int sum3 = sum2 + sum2; // 800 (400 + 400)
C divides the operators into the following groups:
- Arithmetic operators
- Assignment operators
- Comparison operators
- Logical operators
- Bitwise operators
Arithmetic Operators
Arithmetic operators are used to perform common mathematical operations.
Operator | Name | Description | Example |
---|---|---|---|
+ | Addition | Adds together two values | x + y |
- | Subtraction | Subtracts one value from another | x - y |
* | Multiplication | Multiplies two values | x * y |
/ | Division | Divides one value by another | x / y |
% | Modulus | Returns the division remainder | x % y |
++ | Increment | Increases the value of a variable by 1 | ++x |
-- | Decrement | Decreases the value of a variable by 1 | --x |
Assignment Operators
Assignment operators are used to assign values to variables.
In the example below, we use the assignment operator (=
) to assign the value 10 to a variable called x:
Example
int x = 10;
The addition assignment operator (+=
) adds a value to a variable:
Example
int x = 10;
x += 5;
A list of all assignment operators:
Operator | Example | Same As |
---|---|---|
= | x = 5 | x = 5 |
+= | x += 3 | x = x + 3 |
-= | x -= 3 | x = x - 3 |
*= | x *= 3 | x = x * 3 |
/= | x /= 3 | x = x / 3 |
%= | x %= 3 | x = x % 3 |
&= | x &= 3 | x = x & 3 |
|= | x |= 3 | x = x | 3 |
^= | x ^= 3 | x = x ^ 3 |
>>= | x >>= 3 | x = x >> 3 |
<<= | x <<= 3 | x = x << 3 |
Comparison Operators
Comparison operators are used to compare two values (or variables). This is important in programming, because it helps us to find answers and make decisions.
The return value of a comparison is either 1
or 0
, which means true (1
) or false (0
). These values are known as Boolean values, and you will learn more about them in the Booleans and If..Else chapter.
In the following example, we use the greater than operator (>
) to find out if 5 is greater than 3:
Example
int x = 5;
int y = 3;
printf("%d", x > y); // returns 1 (true) because 5 is greater than 3
A list of all comparison operators:
Operator | Name | Example | Description |
---|---|---|---|
== | Equal to | x == y | Returns 1 if the values are equal |
!= | Not equal | x != y | Returns 1 if the values are not equal |
> | Greater than | x > y | Returns 1 if the first value is greater than the second value |
< | Less than | x < y | Returns 1 if the first value is less than the second value |
>= | Greater than or equal to | x >= y | Returns 1 if the first value is greater than, or equal to, the second value |
<= | Less than or equal to | x <= y | Returns 1 if the first value is less than, or equal to, the second value |
Logical Operators
You can also test for true or false values with logical operators.
Logical operators are used to determine the logic between variables or values, by combining multiple conditions:
Operator | Name | Example | Description |
---|---|---|---|
&& | AND | x < 5 && x < 10 | Returns 1 if both statements are true |
|| | OR | x < 5 || x < 4 | Returns 1 if one of the statements is true |
! | NOT | !(x < 5 && x < 10) | Reverse the result, returns 0 if the result is 1 |