44.0 포인터 연산 사용하기

포인터로 선언한 변수에는 메모리 주소가 들어있습니다. 이 포인터 변수에 덧셈이나 뺄셈 연산을 하면 어떻게 될까요?

결과는 간단합니다. 양의 정수에 양의 정수를 더하면 값이 증가하고, 빼면 값이 감소합니다. 마찬가지로 메모리 주소에 일정 숫자를 더하거나 빼면 메모리 주소가 증가, 감소합니다. 즉, 포인터 연산을 하면 다른 메모리 주소에 접근할 수 있으며 메모리 주소를 손쉽게 옮겨 다니기 위해 사용합니다.

그림 44‑1 포인터 연산과 메모리 이동

여기서 메모리 주소가 커지는 상황을 순방향으로 이동(forward), 메모리 주소가 작아지는 상황을 역방향으로 이동(backward)이라고 하겠습니다.

참고로 포인터 연산은 메모리를 다루다 보니 이해하기가 조금 어려울 수 있습니다. 지금 당장은 이해가 가지 않아도 괜찮습니다.