void A(int* a)

{

i+=10;

a[0]=i;

i+=10;

a[1]=i;

}


void B(int** a)

{

*a= (int* )malloc(8);

i+=10;

*((*a)+0)=i;

i+=10;

*((*a)+1)=i;

}


void C(int* a)

{

a= (int* )malloc(8);


i+=10;

*(a+0)=i;

i+=10;

*(a+1)=i;

}


위와같은 함수가 있고


int main()

{

int **a;

a= (int**) malloc(12); //3개의 더블포인터 선언


a[0]=(int*) malloc(8);


A(*(a+0));

printf("%d \n", *(*(a+0)+0) );


system("pause");


B( (a+1) );


printf("%d \n", *(*(a+1)+0) );

system("pause");


C( *(a+2) );


printf("%d \n", *(*(a+2)+0) );



return 0;

}


위와 같이 선언하였다


문제가 나는 함수는?