문제
C언어에서 포인터 변수 p가 주소 100을 가리키고 int가 4바이트일 때, p + 2의 실제 주소값은?
① 102 ② 104 ③ 108 ④ 112
정답
3번
해설
정답: 3. int 포인터에서 p+2는 int 두 칸만큼 이동하므로 100 + 2×4 = 108이 된다.
오답 풀이
- 1번: 바이트 단위로 2만 더한 값이다.
- 2번: int 한 칸만 이동한 값이다.
- 3번: int 두 칸 이동한 값이다.
- 4번: int 세 칸 이동한 값이다.
보충 개념 포인터 연산은 가리키는 자료형의 크기 단위로 이동한다.