在C++中,XOR(按位異或)運(yùn)算可以通過以下方式實(shí)現(xiàn):
^
運(yùn)算符:#include <iostream>
int main() {
int a = 5; // 二進(jìn)制表示:0101
int b = 3; // 二進(jìn)制表示:0011
int xor_result = a ^ b; // 二進(jìn)制表示:0110(即6)
std::cout << "The XOR of "<< a << " and "<< b << " is: " << xor_result << std::endl;
return 0;
}
^
運(yùn)算符和位移操作符:#include <iostream>
int main() {
int a = 5; // 二進(jìn)制表示:0101
int b = 3; // 二進(jìn)制表示:0011
int xor_result = (a << 1) ^ b; // 二進(jìn)制表示:0110(即6)
std::cout << "The XOR of "<< a << " and "<< b << " is: " << xor_result << std::endl;
return 0;
}
在這兩個示例中,我們使用了^
運(yùn)算符對兩個整數(shù)進(jìn)行按位異或操作。第一個示例直接使用^
運(yùn)算符,而第二個示例使用了位移操作符<<
將第一個整數(shù)左移一位,然后再進(jìn)行異或操作。這兩種方法都可以實(shí)現(xiàn)按位異或運(yùn)算。