본문 바로가기
IT/c언어

C 언어 포인터 배열

by 뉴코딩맨 2023. 7. 12.
포인터 배열은 배열의 각 요소가 포인터로 구성된 배열을 말합니다. 즉, 배열의 각 요소는 주소를 저장하고 있는 포인터입니다. 포인터 배열은 다차원 배열을 표현하거나, 여러 개의 문자열을 저장하는 등 다양한 용도로 사용됩니다.
 
 

포인터 배열의 선언과 초기화

포인터 배열을 선언하고 초기화하는 방법은 다음과 같습니다.
 
int* arr[5]; // 포인터 배열 선언
 
위의 예제에서 int*은 int형식의 포인터를 의미하며, arr은 포인터 배열을 나타냅니다. 이렇게 선언된 포인터 배열은 5개의 포인터 요소를 가지고 있습니다.
 
포인터 배열의 요소는 각각 포인터 변수이므로, 각 요소에는 주소를 할당할 수 있습니다. 예를 들어, 다음과 같이 포인터 배열의 각 요소에 메모리 주소를 할당할 수 있습니다.
 
int num1 = 10, num2 = 20, num3 = 30;
int* arr[3] = { &num1, &num2, &num3 };
 
위의 예제에서는 num1, num2, num3이라는 정수 변수를 선언하고 초기값을 할당합니다. 이후 포인터 배열 arr을 선언하고 num1, num2, num3의 주소를 각각 할당합니다.

 

 

포인터 배열의 예제

아래의 예제를 통해 포인터 배열의 사용법을 이해해보겠습니다.

 

#include <stdio.h>

int main() {
    int num1 = 10, num2 = 20, num3 = 30;
    int* arr[3] = { &num1, &num2, &num3 };

    printf("첫 번째 요소: %d\n", *arr[0]);
    printf("두 번째 요소: %d\n", *arr[1]);
    printf("세 번째 요소: %d\n", *arr[2]);

    return 0;
}
 
위의 예제에서는 앞서 설명한 대로 포인터 배열 arr을 선언하고 각 요소에 num1, num2, num3의 주소를 할당합니다. 그리고 *arr[0], *arr[1], *arr[2]를 통해 각 요소가 가리키는 값을 출력합니다.
 

결론

C 언어에서 포인터 배열은 배열의 각 요소가 포인터로 구성된 배열입니다. 포인터 배열은 다차원 배열이나 문자열 배열 등 다양한 용도로 사용될 수 있습니다. 적절히 활용하면 포인터 배열은 프로그램의 효율성과 유연성을 높여줄 수 있습니다. 포인터 배열을 사용하여 다양한 데이터 구조를 구현하고 다양한 작업을 수행할 수 있습니다.

 

 

C 언어 포인터 상수

포인터 상수란 포인터 변수의 값이 변경되지 않는 상수를 말합니다. 즉, 한 번 포인터 변수에 할당된 메모리 주소는 변경할 수 없으며, 다른 변수나 상수의 주소를 가리킬 수 없습니다. 포인터

newcodingman.tistory.com

 

댓글