C Programming/Operators

From Chorke Wiki
Revision as of 04:21, 5 February 2018 by Shahed (talk | contribs) (→‎Special Operators)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

An operator is a symbol that tells the compiler to perform specific mathematical or logical functions. C language is rich in built-in operators and provides the following types of operators:

Arithmetic Operators

Arithmetic Operators are used to performing mathematical calculations like addition +, subtraction -, multiplication *, division / and modulus %.

Operator Description
+ Addition
- Subtraction
* Multiplication
/ Division
% Modulus

Increment and Decrement Operators

Increment and Decrement Operators are useful operators generally used to minimize the calculation, i.e. ++x & x++ means x=x+1 or --x & x−− means x=x-1. But there is a slight difference between ++ or −− written before or after the operand. Applying the pre-increment first add one to the operand and then the result is assigned to the variable on left whereas post-increment first assigns the value to the variable on left and then increment the operand.

Operator Description
++ Increment
−− Decrement

Relational Operators

Relational operators are used to compare two quantities or values.

Operator Description
== Is equal to
!= Is not equal to
> Greater than
< Less than
>= Greater than or equal to
<= Less than or equal to

Logical Operators

C provides three logical operators when we test more than one condition to make decisions. These are: && (meaning logical AND), || (meaning logical OR) and ! (meaning logical NOT).

Operator Description
&& And operator. Performs a logical conjunction of two expressions. (if both expressions evaluate to True, result is True. If either expression evaluates to False, result is False)
|| Or operator. Performs a logical disjunction on two expressions. (if either or both expressions evaluate to True, result is True)
! Not operator. Performs logical negation on an expression.

Bitwise Operators

C provides a special operator for bit operation between two variables.

Operator Description
<< Binary Left Shift Operator
>> Binary Right Shift Operator
~ Binary One's Complement Operator
& Binary AND Operator
^ Binary XOR Operator
| Binary OR Operator

Assignment Operators

Assignment operators applied to assign the result of an expression to a variable. C has a collection of shorthand assignment operators.

Operator Description
= Assign
+= Increments then assigns
-= Decrements then assigns
*= Multiplies, then assigns
/= Divides then assigns
%= Modulus then assigns
<<= Left shift and assigns
>>= Right shift and assigns
&= Bitwise AND assigns
^= Bitwise exclusive OR and assigns
|= Bitwise inclusive OR and assigns

Conditional Operator

C offers a ternary operator which is the conditional operator (?: in combination) to construct conditional expressions.

Operator Description
? : Conditional Expression

Special Operators

C supports some special operators

Operator Description
sizeof() Returns the size of a memory location.
& Returns the address of a memory location.
* Pointer to a variable.