Partage via


_strdup_dbg, _wcsdup_dbg

Versions de _strdup et _wcsdup qui utilisent la version de débogage de malloc.

Syntaxe

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 retournée

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, consultez _malloc_dbg.

Vous n’avez pas besoin d’appeler ces fonctions explicitement dans la plupart des cas. À 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. Par conséquent, vous n’avez pas besoin d’appeler ces fonctions explicitement, sauf si vous souhaitez marquer les blocs de tas comme _CLIENT_BLOCK. Pour plus d’informations sur les types de bloc, consultez Types de bloc sur le tas de débogage.

Mappages de routine de texte générique

Routine TCHAR.H _UNICODE et _MBCS non défini _MBCS Défini _UNICODE Défini
_tcsdup_dbg _strdup_dbg _mbsdup _wcsdup_dbg

Spécifications

Routine En-tête requis
_strdup_dbg, _wcsdup_dbg <crtdbg.h>

Pour plus d’informations sur la compatibilité, consultez Compatibility.

Bibliothèques

Toutes les versions debug des bibliothèques Runtime C.

Voir aussi

Manipulation de chaîne
_strdup, _wcsdup, _mbsdup
Versions de débogage des fonctions d’allocation du tas