[c언어] 포인터의 포인터

이중 포인터를 선언하려면 단순 포인터 변수와 동일한 규칙을 따릅니다. 예를 들어, int형을 가리키는 이중 포인터 변수를 선언하려면 다음과 같이 작성합니다.

int **ptr_ptr;

일반 포인터 변수와 마찬가지로, 이중 포인터도 할당된 메모리 블록을 가리킬 수 있습니다. 예시를 들어 설명하자면,

int *ptr, val;
ptr = &val;
int **ptr_ptr = &ptr;

위의 코드에서 int형 변수 val을 가리키는 포인터 ptr을 만들었습니다. 그리고 이 포인터 ptr을 가리키는 이중 포인터 ptr_ptr을 만들었습니다. 이중 포인터를 이용하면 간접적으로 메모리에 접근할 수 있어서 일부 상황에서 유용할 수 있습니다.

이중 포인터는 복잡해 보일 수 있지만, C 언어에서 메모리를 효율적으로 활용하고 복잡한 자료구조를 구현하는 데에 도움을 줍니다.