포인터(Pointer)는 C언어의 정수이자 가장 강력한 특징 중 하나다.
메모리 주소를 직접 다룰 수 있게 해준다.
핵심 개념:
– 주소 연산자(&): 변수의 메모리 주소를 알아낸다.
– 역참조 연산자(*): 포인터가 가리키는 주소에 저장된 값을 읽거나 쓴다.
– 포인터 변수 선언: int *p;와 같이 가리킬 자료형을 명시한다.
포인터를 사용하면 함수 인자로 큰 데이터를 효율적으로 전달하거나(Call by Reference), 동적 메모리 할당을 통해 유연한 프로그램 작성이 가능하다.
처음에는 주소값과 실제 값이 헷갈려 고생했지만, 메모리 지도를 그려가며 공부하니 포인터의 원리가 명확해졌다.
컴퓨터의 메모리를 직접 제어한다는 느낌이 들어 C언어의 매력을 제대로 느낄 수 있었는 것 같다.