
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Set, Clear and Toggle a Bit in C/C++
You can set clear and toggle bits using bitwise operators in C, C++, Python, and all other programming languages that support these operations. You also need to use the bitshift operator to get the bit to the right place.
Setting a bit
To set a bit, we'll need to use the bitwise OR operator −
Example
#include<iostream> using namespace std; int main() { int i = 0, n; // Enter bit to be set: cin >> n; i |= (1 << n); // Take OR of i and 1 shifted n positions cout << i; return 0; }
Output
If you enter 4, This will give the output −
16
because 16 is equivalent to 10000 in binary.
Clearing a bit
To clear a bit, we'll need to use the bitwise AND operator(&) and bitwise NOT operator(~) −
Example
#include<iostream> using namespace std; int main() { // i is 110 in binary int i = 6, n; // Enter bit to be cleared: cin >> n; i &= ~(1 << n); // Take OR of i and 1 shifted n positions negated cout << i; return 0; }
Output
If you enter 1, This will give the output −
4
because 110 becomes 100 which is equivalent to 4 in decimal.
Toggling a bit
To toggle a bit, we'll need to use the bitwise XOR operator(^) −
Example
#include<iostream> using namespace std; int main() { // i is 110 in binary int i = 6, n; // Enter bit to be toggled: cin >> n; i ^= (1 << n); // Take XOR of i and 1 shifted n positions cout << i; return 0; }
Output
If you enter 1, This will give the output −
4
because 110 becomes 100 which is equivalent to 4 in decimal.
Advertisements