좀 더 구체적으로 말하자면
int main()
{
char *a;
while(1)
{
a = NULL;
a = (char*)malloc(sizeof(char)*100);
memset(a, 0, 100);
...
if(...)
break;
}
free(a);
return 0;
}
이런식의 코드라면 내 생각에는 반복이 될 때 마다 100+100+...+100 의 메모리가 할당되고 마지막에 프리를 1번하니깐 100만큼만 해제가 되고
나머진 메모리릭이 될 것 같은데...
요즘 컴파일러는 친절하게도 "Are you crazy?(너 미쳤냐?)"라고 경고 출력해준다
ㄴ gcc 사용하는중인데 그런거 없던데 ㅜ 프로파일링 해봐야하나...
당연한거 아니냐? - return 0;
ㄴ 그렇지.. 당연한거지 근데 이상한건 반복문안에 free를 넣으면 덤프가 뜬단말야 ㅜ
그럴리 없으니 코드나 다 올려라 - return 0;