[ CnUnix ] in KIDS 글 쓴 이(By): nike (승리의여신) 날 짜 (Date): 2004년 7월 1일 목요일 오후 03시 43분 46초 제 목(Title): Re: [Q] C 에서 >> char* ipaddr = inet_ntoa(struct in_addr in) 라는 함수를 call하면 >> string을 return하는데요. >> 이 ipaddr 이라는 string은 statically allocated 되는 영역에 >> 할당됩니까?. 아니면 dynamically allocated 된 string입니까? man inet_ntoa 해보시면 statically allocated 되는 영역이라고 나옵니다. >> 만약 전자라면 thread-safe하지 않겠네요 >> 그리고 후자라면 반드시 free를 해줘야할것이구요. >> 맞나요? 맞습니다. int inet_ntoa(struct in_addr in, char *ipaddr) 이런 식의 인터페이스를 가져야 마땅한 함수 입니다. libc 함수 중에도 좋지 않은 인터페이스를 가진 함수가 많습니다. 이미 오래 전에 널리 퍼져 그냥 (알아서 잘) 쓰고 있는 거지요. |