C 포인터 질문입니다.

하하의 이미지

아래 코드 꼭 돌려야 합니다.

근데 런타임 에러가 발생합니다.

변수 선언은

int **arrayAAA[10];
int **arrayBBB[10];

꼭 이런식으로 변수는 선언이 되있어야 합니다.

저도 이렇게 해야만 하는 현실이 답답하지만

꼭 저렇게 변수가 선언되야 하고 아래 코드가 돌아야 합니다.

세시간째 씨름하다 지쳐 여기에 도움 글 올립니다.

그럼 수고하세요 ^^;;

main()
{
    int     **arrayAAA[10];
    int     **arrayBBB[10];
 
    int     i;
    int     j;
 
 
    for(i=0; i<4; i++) {
 
        arrayAAA[i]             = (int **)malloc(sizeof(int));
        arrayBBB[i]             = (int **)malloc(sizeof(int));
 
        for(j=0; j<8; j++)  {
            arrayAAA[i][j]      = (int *)malloc(sizeof(int));
            arrayBBB[i][j]        = (int *)malloc(sizeof(int));
        }
    }
 
 
    for(i=0; i<4; i++) {
 
        free(arrayAAA[i]);
        free(arrayBBB[i]);
 
        for(j=0; j<8; j++)  {
            free(arrayAAA[i][j]);
            free(arrayBBB[i][j]);
        }
    }
 
}
Anonymous1의 이미지

보이는 코드는 절대 안돌 것 같은데요.
제대로 올려주세요.