XOR or Exclusive OR is a logical operation that works on 2 binary values. The result of an XOR operation on 2 bits
follows the below rules.
a) If the bits are same i.e both 0 or both 1 then the result of XOR is 0.
b) If the bits are different i.e 0 and 1, then the result of XOR is 1.
C++ : Swapping integers using XOR operations.
#include<iostream>
#include<bitset>
#include<cstdio>
using namespace std;
class Bits {
public:
void Swap(int &a , int &b) {
a = a ^ b;
b = a ^ b;
a = a ^ b;
}
};
int main() {
Bits B;
int a = -5;
int b = 8;
cout << "Before : " << a << " " << b << endl;
B.Swap(a, b);
cout << "After Swap : " << a << " " << b << endl;
a = -256;
b = 16384;
cout << "Before : " << a << " " << b << endl;
B.Swap(a, b);
cout << "After Swap : " << a << " " << b << endl;
return 0;
}
Output
Before : -5 8
After Swap : 8 -5
Before : -256 16384
After Swap : 16384 -256
© 2019-2026 Algotree.org | All rights reserved.
This content is provided for educational purposes. Feel free to learn, practice, and share knowledge.
For questions or contributions, visit algotree.org
"Java is to JavaScript what car is to carpet. - Chris Heilmann"