_strdup_dbg
, _wcsdup_dbg
_strdup
Versi dan_wcsdup
yang menggunakan versi debug dari malloc
.
Sintaks
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
String sumber yang dihentikan null.
blockType
Jenis blok memori yang diminta: _CLIENT_BLOCK
atau _NORMAL_BLOCK
.
filename
Penunjuk ke nama file sumber yang meminta operasi alokasi atau NULL
.
linenumber
Nomor baris dalam file sumber tempat operasi alokasi diminta atau NULL
.
Nilai hasil
Masing-masing fungsi ini mengembalikan penunjuk ke lokasi penyimpanan untuk string yang disalin atau NULL
jika penyimpanan tidak dapat dialokasikan.
Keterangan
Fungsi _strdup_dbg
dan _wcsdup_dbg
identik dengan _strdup
dan _wcsdup
kecuali bahwa, ketika _DEBUG
didefinisikan, fungsi-fungsi ini menggunakan versi debug dari malloc
, _malloc_dbg
, untuk mengalokasikan memori untuk string duplikat. Untuk informasi tentang fitur _malloc_dbg
penelusuran kesalahan , lihat _malloc_dbg
.
Anda tidak perlu memanggil fungsi-fungsi ini secara eksplisit dalam banyak kasus. Sebagai gantinya, Anda dapat menentukan bendera _CRTDBG_MAP_ALLOC
. Ketika _CRTDBG_MAP_ALLOC
didefinisikan, panggilan ke _strdup
dan _wcsdup
dipetakan ulang ke _strdup_dbg
dan _wcsdup_dbg
, masing-masing, dengan blockType
diatur ke _NORMAL_BLOCK
. Dengan demikian, Anda tidak perlu memanggil fungsi-fungsi ini secara eksplisit kecuali Anda ingin menandai blok tumpukan sebagai _CLIENT_BLOCK
. Untuk informasi selengkapnya tentang jenis blok, lihat Jenis blok pada tumpukan debug.
Pemetaan rutin teks generik
TCHAR. Rutinitas H | _UNICODE dan _MBCS tidak ditentukan |
_MBCS Didefinisikan |
_UNICODE Didefinisikan |
---|---|---|---|
_tcsdup_dbg |
_strdup_dbg |
_mbsdup |
_wcsdup_dbg |
Persyaratan
Rutin | Header yang diperlukan |
---|---|
_strdup_dbg , _wcsdup_dbg |
<crtdbg.h> |
Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.
Pustaka
Semua versi debug pustaka run-time C.
Baca juga
Manipulasi string
_strdup
, _wcsdup
, _mbsdup
Versi debug fungsi alokasi timbunan
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk