Oharra
Orrialde honetara sartzeak baimena behar du. Saioa hasteko edo direktorioak aldatzen saia zaitezke.
Orrialde honetara sartzeak baimena behar du. Direktorioak aldatzen saia zaitezke.
Confirma la integridad de los bloques de memoria asignados en el montón de depuración (solo versión de depuración).
Sintaxis
int _CrtCheckMemory( void );
Valor devuelto
Si se ejecuta correctamente, _CrtCheckMemory devuelve TRUE; de lo contrario, la función devuelve FALSE.
Comentarios
La función _CrtCheckMemory valida la memoria asignada por el administrador del montón de depuración comprobando el montón base subyacente e inspeccionando cada bloque de memoria. Si se encuentra un error o una inconsistencia de memoria en el montón base subyacente, la información de encabezado de depuración o los búferes de sobrescritura, _CrtCheckMemory genera un informe de depuración en el que se describe la condición de error. Cuando _DEBUG no se define, las llamadas a _CrtCheckMemory se quitan durante el preprocesamiento.
El comportamiento de _CrtCheckMemory se puede controlar estableciendo los campos de bits de la _crtDbgFlag marca mediante la _CrtSetDbgFlag función . Al activar el _CRTDBG_CHECK_ALWAYS_DF campo de bits, _CrtCheckMemory se llama a cada vez que se solicita una operación de asignación de memoria. Aunque este método ralentiza la ejecución, resulta útil detectar errores rápidamente. Si se desactiva el _CRTDBG_ALLOC_MEM_DF campo de bits, _CrtCheckMemory no se comprueba el montón y se devuelve TRUEinmediatamente .
Dado que esta función devuelve TRUE o FALSE, se puede pasar a una de las _ASSERT macros para crear un mecanismo básico de control de errores de depuración. En el ejemplo siguiente se genera un error de aserción si se detectan daños en el montón:
_ASSERTE( _CrtCheckMemory( ) );
Para obtener más información sobre cómo _CrtCheckMemory se puede usar con otras funciones de depuración, consulte Funciones de informes de estado del montón. Para obtener información general sobre la administración de memoria y el montón de depuración, consulte Detalles del montón de depuración de CRT.
Requisitos
| Routine | Encabezado necesario |
|---|---|
_CrtCheckMemory |
<crtdbg.h> |
Para obtener más información sobre compatibilidad, consulte Compatibilidad.
Bibliotecas
Solo versiones de depuración de las bibliotecas en tiempo de ejecución de C.
Ejemplo
Para obtener un ejemplo de cómo usar _CrtCheckMemory, vea crt_dbg1.