Bagikan melalui


Fungsi StrDupW (shlwapi.h)

Menduplikasi string.

Sintaks

PWSTR StrDupW(
  PCWSTR pszSrch
);

Parameter

pszSrch

Jenis: PCTSTR

Penunjuk ke string karakter yang dihentikan null konstanta.

Nilai kembali

Jenis: PTSTR

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

Keterangan

StrDup akan mengalokasikan penyimpanan ukuran string asli. Jika alokasi penyimpanan berhasil, string asli akan 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 penggunaan StrDup.

#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 pra-prosesor 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

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