#define _CRTDBG_MAP_ALLOC #include <iostream> #include <cstdlib> #include <cstdio> #include <crtdbg.h> int main(){ _CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF); int *a; //변수 선언 /* 메모리할당 */ a = new int[10]; /* 메모리해제 */ delete a; _CrtDumpMemoryLeaks(); system("pause"); exit(EXIT_SUCCESS); }
기본코드 입니다.
#define _CRTDBG_MAP_ALLOC #include <cstdlib> #include <crtdbg.h>
는 순번에 맞춰서 입력해 주어야 합니다.( MSDN 출처 )
_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF); // do something.. _CrtDumpMemoryLeaks();
do something에서 작업을 하고 난 후에 메모리 정리가 되어있지 않으면, 비쥬얼스튜디오에서 아래와 같은 Output을 보실 수 있습니다.
'Programming > C/C++' 카테고리의 다른 글
포인터 2차 동적 할당 (0) | 2011.02.21 |
---|---|
Random double 값 추출하기 (0) | 2011.02.10 |
cos (0) | 2011.02.10 |
배열 개수 확인하는 방법 (0) | 2011.01.27 |
문자열과 숫자형 변환 (0) | 2011.01.26 |