_strdup_dbg, _wcsdup_dbg
Versionen von _strdup und _wcsdup , die die Debugversion von mallocverwenden.
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
);
Parameter
strSource
Klicken Sie auf NULL endende Quellzeichenfolge.blockType
Angeforderter Typ des Speicherblocks: _CLIENT_BLOCK oder _NORMAL_BLOCK.filename
Ein Zeiger auf den Namen der Quelldatei der Zuordnung angeforderten Operation oder NULL.linenumber
Zeilennummer in der Quelldatei, in der angeforderte Vorgang für Zuordnungen oder NULL war.
Rückgabewert
Jede dieser Funktionen gibt einen Zeiger auf den Speicherort für die kopierte Zeichenfolge oder NULL zurück, wenn Speicher nicht zugeordnet werden kann.
Hinweise
Die _strdup_dbg und _wcsdup_dbg-Funktionen sind in _strdup und _wcsdup identisch, mit der Ausnahme, dass beim _DEBUG definiert wird, verwenden diese Funktionen die Debugversion von malloc_malloc_dbg, für die doppelte Zeichenfolge Speicher belegen.Weitere Informationen über die Debugfunktionen aus _malloc_dbgfinden Sie unter _malloc_dbg.
Sie müssen diese Funktionen in den meisten Fällen nicht explizit aufrufen.Stattdessen können Sie das Flag _CRTDBG_MAP_ALLOCdefinieren.Wenn _CRTDBG_MAP_ALLOC definiert wird, werden Aufrufe _strdup und _wcsdup zu _strdup_dbg und _wcsdup_dbgwenn blockType jeweils neu zugeordnet _NORMAL_BLOCKzu festgelegt ist.Daher ist es nicht erforderlich, um diese Funktionen explizit aufrufen, sofern der Heap als Bausteine _CLIENT_BLOCKkennzeichnen möchten.Weitere Informationen über Blocks Typen finden Sie unter Blocktypen auf dem Debugheap.
Zuweisung generischer Textroutinen
TCHAR.H-Routine |
_UNICODE & _MBCS nicht definiert |
_MBCS definieren |
_UNICODE definiert |
---|---|---|---|
_tcsdup_dbg |
_strdup_dbg |
_mbsdup |
_wcsdup_dbg |
Anforderungen
Routine |
Erforderlicher Header |
---|---|
_strdup_dbg, _wcsdup_dbg |
<crtdbg.h> |
Um Kompatibilität zusätzlichen Informationen finden Sie unter Kompatibilität in der Einführung.
Bibliotheken
Alle Debugversionen Cs.
.NET Framework-Entsprechung
Siehe auch
Referenz
Zeichenfolgenbearbeitung (CRT)