_heapchk

 

Pour obtenir la dernière documentation sur Visual Studio 2017, consultez Documentation Visual Studio 2017.

Exécute des vérifications de cohérence sur le tas.

int _heapchk( void );  

_heapchkRenvoie un des entiers constantes manifestes suivantes définies dans Malloc.h.

_HEAPBADBEGIN
Informations d’en-tête initiale sont incorrectes ou introuvable.

_HEAPBADNODE
Nœud incorrect a été trouvé ou segment de mémoire est endommagé.

_HEAPBADPTR
Pointeur de segment de mémoire n’est pas valide.

_HEAPEMPTY
Segment de mémoire n’a pas été initialisé.

_HEAPOK
Le tas est cohérent.

En outre, si une erreur se produit, _heapchk définit errno à ENOSYS.

Le _heapchk fonction aide à déboguer des problèmes liés au tas en vérification de cohérence minimale du tas. Si le système d’exploitation ne prend pas en charge _heapchk(par exemple, Windows 98), la fonction retourne _HEAPOK et errno à ENOSYS.

RoutineEn-tête requisEn-tête facultatif
_heapchk<malloc.h><errno.h>

Pour plus d’informations sur la compatibilité, consultez Compatibility dans l’introduction.

// crt_heapchk.c  
// This program checks the heap for  
// consistency and prints an appropriate message.  
  
#include <malloc.h>  
#include <stdio.h>  
  
int main( void )  
{  
   int  heapstatus;  
   char *buffer;  
  
   // Allocate and deallocate some memory  
   if( (buffer = (char *)malloc( 100 )) != NULL )  
      free( buffer );  
  
   // Check heap status  
   heapstatus = _heapchk();  
   switch( heapstatus )  
   {  
   case _HEAPOK:  
      printf(" OK - heap is fine\n" );  
      break;  
   case _HEAPEMPTY:  
      printf(" OK - heap is empty\n" );  
      break;  
   case _HEAPBADBEGIN:  
      printf( "ERROR - bad start of heap\n" );  
      break;  
   case _HEAPBADNODE:  
      printf( "ERROR - bad node in heap\n" );  
      break;  
   }  
}  

OK - heap is fine  

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez Exemples d'appel de plateforme.

Allocation de mémoire
_heapadd
_heapmin
_heapset
_heapwalk

Afficher: