Exportar (0) Imprimir
Expandir todo
and
div
eof
not
or
xor
Expandir Minimizar
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

_aligned_malloc_dbg

Asigna memoria en un límite de alineación especificado con el espacio adicional para un encabezado de depuración y sobrescribe los búferes (versión de depuración solo).

void * _aligned_malloc_dbg(
    size_t size, 
    size_t alignment,
   const char *filename,
   int linenumber 
);

[in] size

Tamaño de asignación de memoria solicitada.

[in] alignment

Valor de la alineación, que debe ser un entero potencia de 2.

[in] filename

Puntero al nombre del archivo de código fuente que solicitó la operación de asignación o valor NULL.

[in] linenumber

Número de línea del archivo de código fuente en la que se solicitó la operación de asignación o valor NULL.

Un puntero al bloque de memoria que fue asignado o a NULL si se produjo un error en la operación.

_aligned_malloc_dbg es una versión de depuración de la función _aligned_malloc. Si no se define _DEBUG, cada llamada a _aligned_malloc_dbg se reduce a una llamada a _aligned_malloc. _aligned_malloc y _aligned_malloc_dbg asignan un bloque de memoria del montón base, pero _aligned_malloc_dbg proporciona varias características de depuración: búferes situados a cada lado de la parte del usuario del bloque para comprobar pérdidas, y filename/información delinenumber para determinar el origen de las solicitudes de asignación.

_aligned_malloc_dbg asigna el bloque de memoria con un poco más de espacio que el size solicitado. El administrador del montón de depuración usa el espacio adicional para vincular los bloques de memoria de depuración, y para proporcionar a la aplicación información de encabezado de depuración y sobrescribir los búferes. Cuando se asigna el bloque, la parte del usuario de bloque se rellena con el valor 0xCD y cada uno de los búferes sobrescritos se rellena con 0xFD.

_aligned_malloc_dbg establece errno en ENOMEM si se produce un error de asignación de memoria o si la cantidad de memoria necesaria (incluida la sobrecarga ya mencionada) es mayor que _HEAP_MAXREQ. Para obtener más información sobre este y otros códigos de error, vea errno, _doserrno, _sys_errlist y _sys_nerr. Además, _aligned_malloc_dbg valida sus parámetros. Si alignment no es una potencia de 2 o size es cero, esta función invoca el controlador no válido de parámetro, tal y como se describe en Validación de parámetros. Si la ejecución puede continuar, la función devuelve NULL y establece errno en EINVAL.

Para obtener información sobre cómo los bloques de memoria se asignan, inicialice, y se administran en la versión de depuración del montón base, vea Administración de memoria y el montón de depuración.

Para obtener información sobre la asignación de tipos de bloque y cómo se usan, vea Tipos de bloques en el montón de depuración.

Rutina

Encabezado necesario

_aligned_malloc_dbg

<crtdbg.h>

Para obtener más información de compatibilidad, vea Compatibilidad en la Introducción.

Bibliotecas

Solo las versiones de depuración de las bibliotecas en tiempo de ejecución de C.

No es aplicable Para llamar a la función estándar de C, use PInvoke. Para obtener más información, vea Ejemplos de invocación de plataforma.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft