[c언어] 포인터와 가리키는 대상

포인터(pointer)는 메모리 주소를 저장하는 변수이다. 메모리 주소를 저장하므로 다른 변수나 데이터 구조체를 가리키는 데 사용된다. 포인터의 값은 메모리 주소이며, 이 주소를 이용하여 메모리에 있는 데이터를 변경하거나 접근할 수 있다.

포인터 변수 선언

포인터 변수는 다음과 같이 선언된다.

int *ptr;

위의 예제에서 ptr은 정수를 가리키는 포인터를 나타낸다.

가리키는 대상

포인터가 가리키는 대상을 설정하기 위해서는 대상의 메모리 주소를 포인터 변수에 대입해야 한다.

int num = 10;
int *ptr = #

위의 예제에서 &numnum 변수의 메모리 주소를 나타낸다.

가리키는 대상 변경

포인터는 다른 메모리 주소나 변수를 가리킬 수 있다. 이를 이용하여 다른 변수의 값을 변경하거나 메모리 주소를 서로 교환할 수 있다.

int num1 = 10;
int num2 = 20;
int *ptr = &num1;

ptr = &num2; // ptr은 이제 num2를 가리킨다

위의 예제에서 ptr은 먼저 num1을 가리켰다가 후에 num2를 가리키게 되었다.

포인터는 C언어에서 매우 강력한 기능을 제공하므로 제대로 이해하고 활용할 수 있다면 효과적인 프로그래밍을 할 수 있다.

참고 자료: GeeksforGeeks - Pointers in C/C++