본문 바로가기

C

[C] 포인터 배열을 이용하여 2차원 배열 만들기 : 동적할당

포인터 배열 *p[MAX]를 선언하고 n을 읽으면 포인터배열의 각 원소에 1차원 배열을 동적으로 생성하여 연결한다.

 

n만큼 n*n 크기로 동적할당하려면

 

int *p[MAX];

int n;

 

scanf("%s", &n);

 

//동적할당

for(int i=0; i<n; i++){

    p[i] = (int *)malloc(n * (sizeof(int));

}

 

//반환

for(int i=0; i<n; i++){

    free(p[i]);

}