_strdup_dbg, _wcsdup_dbg
Versiones de _strdup y _wcsdup que usan la versión de depuración de malloc.
char *_strdup_dbg( const char *strSource, int blockType, const char *filename, int linenumber ); wchar_t *_wcsdup_dbg( const wchar_t *strSource, int blockType, const char *filename, int linenumber );
Parámetros
strSource
Cadena de origen terminada en NULL.blockType
Tipo de bloque de memoria solicitado: _CLIENT_BLOCK o _NORMAL_BLOCK.filename
Puntero al nombre del archivo de código fuente que solicitó la operación de asignación o NULL.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.
Valor devuelto
Cada una de estas funciones devuelve un puntero a la ubicación de almacenamiento para la cadena copiada o NULL si no se puede asignar almacenamiento.
Comentarios
Las funciones _strdup_dbg y _wcsdup_dbg son idénticas a _strdup y _wcsdup, salvo que, si se define _DEBUG, estas funciones usan la versión de depuración de malloc, _malloc_dbg, para asignar memoria para la cadena duplicada. Para más información sobre las características de depuración de _malloc_dbg, vea _malloc_dbg.
En la mayoría de los casos, no es necesario llamar a estas funciones explícitamente en la mayoría. En lugar de ello, se puede definir la marca _CRTDBG_MAP_ALLOC. Si se define _CRTDBG_MAP_ALLOC, las llamadas a _strdup y _wcsdup se reasignan a _strdup_dbg y _wcsdup_dbg, respectivamente, con el parámetro blockType establecido en _NORMAL_BLOCK. Por consiguiente, no necesario llamar a estas funciones explícitamente a menos que se desee marcar los bloques del montón como _CLIENT_BLOCK. Para más información sobre los tipos de bloques, vea Tipos de bloques en el montón de depuración.
Asignaciones de rutina de texto genérico
Rutina TCHAR.H |
_UNICODE y _MBCS no definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tcsdup_dbg |
_strdup_dbg |
_mbsdup |
_wcsdup_dbg |
Requisitos
Rutina |
Encabezado necesario |
---|---|
_strdup_dbg, _wcsdup_dbg |
<crtdbg.h> |
Para obtener información adicional de compatibilidad, vea Compatibilidad en la Introducción.
Bibliotecas
Todas las versiones de depuración de las bibliotecas en tiempo de ejecución de C.
Equivalente en .NET Framework
Vea también
Referencia
Conceptos
Versiones de depuración de las funciones de asignación del montón