Software Technology Tips

Microsoft Visual Studio (2003/2005) informs about memory leakes in a module by setting the "leak check" bit, _CRTDBG_LEAK_CHECK_DF, to the debugger.
The memory leak information is printed on "Output" window. 
[ This advantage is in "Debug" mode only. ]
int _tmain()
int* ptr = NULL;
ptr = (int*)malloc(sizeof(int)*20);
for( int i=0; i<20; ++i )
ptr[i] = i;
#ifndef NDEBUG
int flag = _CrtSetDbgFlag(_CRTDBG_REPORT_FLAG); // Get current flag
flag |= _CRTDBG_LEAK_CHECK_DF; // Turn on leak-checking bit
_CrtSetDbgFlag(flag); // Set flag to the new value
printf("\n\nPress Enter...");
return 0;

If we run the above program, we can see the memory leak information in an "Output" window as follows...
Detected memory leaks!
Dumping objects ->
{56} normal block at 0x02D42D48, 80 bytes long.
 Data: <  > 00 00 00 00 01 00 00 00 02 00 00 00 03 00 00 00 
Object dump complete.
Of course, the above information is not describes where the mem leak is present and in which file etc.., but the information is valid.

Related Tags:

Visual Studio, Memory Leaks, C++

Author: Manjunath G


Let us Connect!

Awards and Achievements

Red Herringcolor DeloitteFast50 DB ZInnov1   Nascome  DB Stpi

This site uses cookies. We respect your privacy.copyright (c) Mindfire Solutions 2007-2015. Login