일단 포인터를 반환하는 함수일때

ex)

      int main(void) 

     {

           int* ptr;

            ptr=f(4);

            // ptr[0]~ptr[3]까지 출력

            return 0;

     }



      int* f(int n)

      {

            int*p;

            p=(int*)malloc(sizeof(int)*n);

            // p[0]~p[n]까지 값을 넣어줌.           

            return p;

      }


   

  저렇게 함수 내에서 동적할당해주고 동적할당 해제는 어디서 어떤 변수로 해줘야하나요?????



  f함수 내에서 return 전에 해제를 해버리면 이상한값들이 반환되고,,,