구조체 wrote..
구조체를 정의하고.
나중에 어떤 정보가 캐치되면. 그 구조체의 해당 필드안에에 덫붙이려고
합니다.
그래서 담을 정보를 버퍼에 저장하고strcat 하면 세그멘테이션 에러가 나
네요.
아마도 메모리가 부족해서 그런거 아닌지 싶은데 처음에 malloc 할때 크
게 잡아도 역시 똑같은 에러가 뜹니다.
이런경우는 어떻게 해야 하죠.?
구조체에 대해 구체적으로 설명하시지 않아서 잘은 모르겠습니다만,
아마도 구조체 안의 char* 포인터에 strcat를 하시려고 했던 것 같은데..
결론적으로, 구조체 안의 포인터에 대해서도 따로 malloc하셔야 합니다.
이유는, 구조체에 malloc하실 때에는 char* 변수 자체의 공간
(즉, char*가 가리키는 메모리 주소를 저장하는 공간 4byte정도)에 대한
malloc를 하는 것 뿐이기 때문이지요.
Re: 구조체 메모리
구조체 wrote..
구조체를 정의하고.
나중에 어떤 정보가 캐치되면. 그 구조체의 해당 필드안에에 덫붙이려고
합니다.
그래서 담을 정보를 버퍼에 저장하고strcat 하면 세그멘테이션 에러가 나
네요.
아마도 메모리가 부족해서 그런거 아닌지 싶은데 처음에 malloc 할때 크
게 잡아도 역시 똑같은 에러가 뜹니다.
이런경우는 어떻게 해야 하죠.?
구조체에 대해 구체적으로 설명하시지 않아서 잘은 모르겠습니다만,
아마도 구조체 안의 char* 포인터에 strcat를 하시려고 했던 것 같은데..
결론적으로, 구조체 안의 포인터에 대해서도 따로 malloc하셔야 합니다.
이유는, 구조체에 malloc하실 때에는 char* 변수 자체의 공간
(즉, char*가 가리키는 메모리 주소를 저장하는 공간 4byte정도)에 대한
malloc를 하는 것 뿐이기 때문이지요.
오병현 octaphial@yahoo.com
댓글 달기