문제
다음 C 코드의 실행 결과로 알맞은 것은?
C#include <stdio.h> int main() { int a = 0x5A; int b = 0x3C; printf("%X", a & b); return 0; }
① 1A ② 18 ③ 5A ④ 3C
정답
2번
해설
정답: 2. 0x5A와 0x3C를 비트 단위 AND 연산하면 0x18이 된다.
오답 풀이
- 1번: 1A는 비트 AND 결과가 아니다.
- 2번: 0x5A & 0x3C 결과는 0x18이다.
- 3번: 5A는 변수 a의 원래 값이다.
- 4번: 3C는 변수 b의 원래 값이다.
보충 개념 비트 AND 연산은 두 비트가 모두 1일 때만 1을 결과로 만든다.