◈ 기본 연습
다음 프로그램의 출력 결과를 예측하시오.
#include <stdio.h> int main() { int a = 0x12345678; int b = 0x456789AB; int c = 0; int d = 0; c = a^b; printf("%#X \n", c); d = c^b; printf("%#X \n", d); return 0; }
답:
0X5753DFD3
0X12345678
특정 값을 우측 피연산자로 ^연산을 두 번하면 원래의 값이 만들어집니다.
이러한 이유로 a^b로 암호한 데이터 c를 c^b를 하였을 때 원래 값인 a와 같아지는 것입니다.