Partager via


_aligned_free_dbg

Libère un bloc de mémoire alloué avec _aligned_malloc ou _aligned_offset_malloc (débogage uniquement).

void _aligned_free_dbg(
   void *memblock
);

Paramètres

  • memblock
    Un pointeur vers le bloc de mémoire qui a été retourné à la fonction d' _aligned_malloc ou d' _aligned_offset_malloc .

Notes

la fonction d' _aligned_free_dbgest une version debug de la fonction de _aligned_free .Lorsque _DEBUG n'est pas défini, chaque appel à _aligned_free_dbg est réduit à un appel à _aligned_free._aligned_free et l' _aligned_free_dbg libèrent un bloc de mémoire dans le tas de base, mais _aligned_free_dbgs'adapte à une fonctionnalité de débogage : la capacité de conserver a libéré les blocs de la liste liée du tas pour simuler des conditions de mémoire insuffisante.

_aligned_free_dbg exécute un contrôle de validité sur tous les fichiers spécifiés et emplacements de bloc avant d'exécuter l'opération libre.L'application n'est pas destinée à fournir ces informations.Lorsqu'un bloc de mémoire est relâché, le gestionnaire du tas de débogage vérifie automatiquement l'intégrité des mémoires tampons de chaque côté de la partie utilisateur et envoie un rapport d'erreur si un remplacement a eu lieu.Si le champ de bits d' _CRTDBG_DELAY_FREE_MEM_DFde la balise de _crtDbgFlag est défini, le bloc libéré est rempli avec la valeur 0xDD, assigné _FREE_BLOCK type de bloc, et conservé dans la liste liée du tas de blocs de mémoire.

Si une erreur se produit en libérant de la mémoire, errno est défini avec les informations du système d'exploitation sur la nature de l'échec.Pour plus d'informations, consultez errno, _doserrno, _sys_errlist, et _sys_nerr.

Pour plus d'informations sur la manière dont les blocs de mémoire sont alloués, initialisés, et gérés dans la version debug de tas de base, consultez gestion de la mémoire et le tas de débogage.Pour plus d'informations sur les types de bloc d'allocation et leur utilisation, consultez types de blocs sur le tas de débogage.Pour plus d'informations sur les différences entre appeler une fonction standard du tas et sa version debug dans une version debug d'une application, consultez À l'aide de la version debug ou la version de base.

Configuration requise

routine

en-tête requis

_aligned_free_dbg

<crtdbg.h>

Pour plus d'informations de compatibilité, consultez compatibilité dans l'introduction.

Équivalent .NET Framework

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez l' exemples d'appel de code non managé.

Voir aussi

Référence

Déboguez des routines