heapcheck
Nach oben zu alloc.h - Index
Header-Datei
alloc.h
Kategorie
Speicherroutinen
Prototyp
int heapcheck(void);
Beschreibung
Überprüft den Heap.
heapcheck durchläuft den Heap und überprüft die Zeiger, die Größe und andere wichtige Attribute eines jeden Blocks.
Rückgabewert
Wenn ein Fehler gefunden wird, ist der Rückgabewert kleiner als 0, andernfalls ist er größer als Null. Im Folgenden sind die Rückgabewerte und deren Bedeutung beschrieben:
_HEAPCORRUPT |
Der Heap ist beschädigt. |
_HEAPEMPTY |
Es ist kein Heap-Speicher vorhanden. |
_HEAPOK |
Bei der Überprüfung des Heap wurden keine Fehler gefunden. |
Beispiel
#include <stdio.h>
#include <alloc.h>
#define NUM_PTRS 10
#define NUM_BYTES 16
int main(void)
{
char *array[ NUM_PTRS ];
int i;
for( i = 0; i < NUM_PTRS; i++ )
array[ i ] = (char *) malloc( NUM_BYTES );
for( i = 0; i < NUM_PTRS; i += 2 )
free( array[ i ] );
if( heapcheck() == _HEAPCORRUPT )
printf( "Heap is corrupted.\n" );
else
printf( "Heap is OK.\n" );
return 0;
}
Portabilität
POSIX | Win32 | ANSI C | ANSI C++ |
---|---|---|---|
+ |