In this tutorial, you will learn about the Bitwise Operations in C and their usage and examples.
Bitwise Operations in C with Example
The table below illustrates the Bitwise Operators in C, a brief description, and a simple example.
Operator | Description | Example |
---|---|---|
& | "AND" Operator copies a bit to the result if it exists in both operands. | (A & B) |
| | "OR" Operator copies a bit if it exists in either operand. | (A | B) |
^ | "XOR" Operator copies the bit if it is set in one operand but not both. | (A ^ B) |
~ | One's Complement Operator is unary and has the effect of 'flipping' bits. | (~A ) |
<< | Left Shift Operator. The left operand's value is moved left by the number of bits specified by the right operand. | A << 2 |
>> | Right Shift Operator. The left operand's value is moved right by the number of bits specified by the right operand. | A >> 2 |
Example of Bitwise Operators in C
#include <stdio.h> int main() { int x = 20,y = 40,AND_Operation,OR_Operation,XOR_Operation,NOT_Operation ; AND_Operation = (x&y); OR_Operation = (x|y); NOT_Operation = (~x); XOR_Operation = (x^y); printf("AND_Operation value = %d\n",AND_Operation ); printf("OR_Operation value = %d\n",OR_Operation ); printf("NOT_Operation value = %d\n",NOT_Operation ); printf("XOR_Operation value = %d\n",XOR_Operation ); printf("Left_Shift value = %d\n", x << 1); printf("Right_Shift value = %d\n", x >> 1); }
Output
AND_Operation value = 0 OR_Operation value = 60 NOT_Operation value = -21 XOR_Operation value = 60 Left_Shift value = 40 Right_Shift value = 10