_strdup_dbg, _wcsdup_dbg
Sürümleri _strdup ve _wcsdup hata ayıklama sürümünü kullanmak 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
);
Parametreler
strSource
Kaynak boş sonlandırılmış dize.blockType
Bellek bloğu türü istendi: _CLIENT_BLOCK veya _NORMAL_BLOCK.filename
İşaretçi ayırma işlemi veya null istenen kaynak dosyasının adıdır.linenumber
Satır numarasını burada ayırma işlemi istendi kaynak dosyadaki veya null.
Dönüş Değeri
Bu işlevlerden her biri kopyalanan dize için depolama konumu gösteren bir işaretçi döndürür veya NULL depolama tahsis ederseniz.
Notlar
_strdup_dbg Ve _wcsdup_dbg işlevleri aynı _strdup ve _wcsdup dışında ne zaman _DEBUG olan tanımlı, bu işlevleri hata ayıklama sürümünü kullanma malloc, _malloc_dbg, yinelenen dize için bellek ayrılamadı. Hata ayıklama özellikleri hakkında bilgi için _malloc_dbg, bkz: _malloc_dbg.
Çoğu durumda bu işlevleri açıkça çağırın gerekmez. Bunun yerine, bayrak tanımlayabilirsiniz _CRTDBG_MAP_ALLOC. Zaman _CRTDBG_MAP_ALLOC tanımlanır, için çağırdığı _strdup ve _wcsdup için eşleştirilir _strdup_dbg ve _wcsdup_dbg, sırasıyla ile blockType için _NORMAL_BLOCK. Bu nedenle, yığın taşları olarak işaretlemek istediğiniz sürece bu işlevleri açıkça çağırın gerekmez _CLIENT_BLOCK. Blok türleri hakkında daha fazla bilgi için bkz: Türler bloklar hata ayıklama öbek üzerindeki.
Genel metin yordamı eşlemeleri
TCHAR.H yordamına girildi |
_UNICODE & _mbcs tanımlı değil |
Tanımlanan _mbcs |
Tanımlanan _UNICODE |
---|---|---|---|
_tcsdup_dbg |
_strdup_dbg |
_mbsdup |
_wcsdup_dbg |
Gereksinimler
Yordamı |
Gerekli başlık |
---|---|
_strdup_dbg, _wcsdup_dbg |
<crtdbg.h> |
Ek uyumluluk bilgileri için bkz: Uyumluluk giriş.
Kitaplıkları
Tüm hata ayıklama sürümlerini c çalışma zamanı kitaplıkları.