在C++中,XOR(按位異或)是一種二進(jìn)制運(yùn)算,它接受兩個(gè)等長(zhǎng)的二進(jìn)制數(shù)作為輸入,并返回一個(gè)新的二進(jìn)制數(shù),其中每個(gè)對(duì)應(yīng)位上的值是輸入值的按位異或結(jié)果。
在C++中,可以使用以下方法實(shí)現(xiàn)XOR運(yùn)算:
^
:int a = 5; // 二進(jìn)制表示為 0101
int b = 3; // 二進(jìn)制表示為 0011
int xor_result = a ^ b; // 結(jié)果為 0110(十進(jìn)制的6)
std::bit_xor
(C++17及更高版本):#include <iostream>
#include <functional>
int main() {
int a = 5;
int b = 3;
int xor_result = std::bit_xor(a, b);
std::cout << "XOR result: " << xor_result << std::endl; // 輸出:6
return 0;
}
請(qǐng)注意,std::bit_xor
是C++17中引入的功能,因此在使用之前需要確保編譯器支持C++17標(biāo)準(zhǔn)。