C++ 개념 정리

25. 비트 연산자

CE : 하랑 2026. 2. 8. 16:11

C++에서 ^ 연산자는 비트 단위의 배타적 논리합 (XOR) 연산자입니다.

a ^ b는 정수 a와 b의 각 비트를 비교해서 서로 다르면 1, 같으면 0을 반환합니다.

#include <iostream>
using namespace std;

int main() {
    int a = 5;    // 0101
    int b = 3;    // 0011

    int result = a ^ b;  // 0101 ^ 0011 = 0110 (== 6)

    cout << "a ^ b = " << result << endl;
    return 0;
}
a ^ b = 6

 

#include <iostream>
using namespace std;

int main() {
    int a = 5;    // 0101
    int b = 3;    // 0011

    a ^= b;       // a = a ^ b → a = 6 (0110)

    cout << "a = " << a << endl;
    return 0;
}
a = 6

특히 XOR는 다음 성질 때문에 암호화, 오류 검출, 비트 마스크 처리, 스왑(swap) 같은 알고리즘에서 자주 사용됩니다:

 

변수 값 교환 (swap without temp)

int a = 10, b = 7;

a ^= b;
b ^= a;
a ^= b;

// 결과: a = 7, b = 10

'C++ 개념 정리' 카테고리의 다른 글

27. static VS extern  (0) 2026.03.01
26. 비트 마스크 열거형(enum)  (0) 2026.02.08
34. C++ 곱셈 연산 나눗셈 연산 차이  (0) 2026.02.08
24. 정수  (0) 2026.02.01
23. IOCP  (0) 2026.01.31