_strdup_dbg, _wcsdup_dbg
Versions de _strdup et _wcsdup qui utilisent la version de débogage 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 );
Paramètres
strSource
Chaîne source se terminant par null.blockType
Type de bloc de mémoire demandé : _CLIENT_BLOCK ou _NORMAL_BLOCK.filename
Pointeur vers le nom du fichier source qui a demandé l'opération d'allocation ou NULL.linenumber
Numéro de ligne dans le fichier source où l'opération d'allocation a été demandée ou NULL.
Valeur de retour
Chacune de ces fonctions retourne un pointeur vers l'emplacement de stockage de la chaîne copiée ou NULL si le stockage ne peut pas être alloué.
Notes
Les fonctions _strdup_dbg et _wcsdup_dbg sont identiques à _strdup et _wcsdup sauf que, quand _DEBUG est défini, ces fonctions utilisent la version de débogage de malloc, _malloc_dbg pour allouer de la mémoire pour la chaîne dupliquée. Pour plus d'informations sur les fonctionnalités de débogage de _malloc_dbg, voir _malloc_dbg.
Dans la plupart des cas, vous n'avez pas besoin d'appeler ces fonctions de manière explicite. À la place, vous pouvez définir l'indicateur _CRTDBG_MAP_ALLOC. Quand _CRTDBG_MAP_ALLOC est défini, les appels à _strdup et _wcsdup sont remappés à _strdup_dbg et _wcsdup_dbg, respectivement, avec blockType défini sur _NORMAL_BLOCK. Ainsi, vous n'avez pas besoin d'appeler ces fonctions de manière explicite sauf si vous souhaitez marquer les blocs du tas comme _CLIENT_BLOCK. Pour plus d'informations sur les types de blocs, voir Types de bloc sur le tas de débogage.
Mappages de routines de texte générique
Routine TCHAR.H |
_UNICODE et _MBCS non définis |
_MBCS défini |
_UNICODE défini |
---|---|---|---|
_tcsdup_dbg |
_strdup_dbg |
_mbsdup |
_wcsdup_dbg |
Configuration requise
Routine |
En-tête requis |
---|---|
_strdup_dbg, _wcsdup_dbg |
<crtdbg.h> |
Pour plus d'informations sur la compatibilité, voir Compatibilité dans l'introduction.
Bibliothèques
Toutes les versions de débogage des bibliothèques Runtime C.