Fungsi StrDupW (shlwapi.h)

Menduplikasi string.

Sintaksis

C++
PWSTR StrDupW(
  PCWSTR pszSrch
);

Parameter

pszSrch

Jenis: PCTSTR

Penunjuk ke konstanta string karakter nulldihentikan.

Mengembalikan nilai

Jenis: PTSTR

Mengembalikan alamat string yang disalin, atau NULL jika string tidak dapat disalin.

Komentar

StrDup akan mengalokasikan penyimpanan ukuran string asli. Jika alokasi penyimpanan berhasil, string asli disalin ke string duplikat.

Fungsi ini menggunakan LocalAlloc untuk mengalokasikan ruang penyimpanan untuk salinan string. Aplikasi panggilan harus membebaskan memori ini dengan memanggil fungsi LocalFree pada pointer yang dikembalikan oleh panggilan ke StrDup.

Contoh

Aplikasi konsol sederhana ini menggambarkan penggunaanStrDup .

C++
#include <windows.h>
#include <shlwapi.h>
#include <stdio.h>

void main(void)
{
   char buffer[] = "This is the buffer text";
   char *newstring;

   // Note: Never use an unbounded %s format specifier in printf.
   printf("Original: %25s\n", buffer);

   newstring = StrDup(buffer);
   if (newstring != NULL)
   {
       printf("Copy:     %25s\n", newstring);
       LocalFree(newstring);
   }
}

OUTPUT:
- - - - - - 
Original: This is the buffer text
Copy:     This is the buffer text

Catatan

Header shlwapi.h mendefinisikan StrDup sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preprosektor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

Syarat Nilai
klien minimum yang didukung Windows 2000 Professional, Windows XP [hanya aplikasi desktop]
server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Platform Target Windows
Header shlwapi.h
Pustaka Shlwapi.lib
DLL Shlwapi.dll (versi 4.71 atau yang lebih baru)