StrDupW-Funktion (shlwapi.h)

Dupliziert eine Zeichenfolge.

Syntax

PWSTR StrDupW(
  PCWSTR pszSrch
);

Parameter

pszSrch

Typ: PCTSTR

Ein Zeiger auf eine konstante NULL-endende Zeichenfolge.

Rückgabewert

Typ: PTSTR

Gibt die Adresse der kopierten Zeichenfolge zurück, oder NULL , wenn die Zeichenfolge nicht kopiert werden kann.

Hinweise

StrDup weist speicher die Größe der ursprünglichen Zeichenfolge zu. Wenn die Speicherzuordnung erfolgreich ist, wird die ursprüngliche Zeichenfolge in die doppelte Zeichenfolge kopiert.

Diese Funktion verwendet LocalAlloc , um Speicherplatz für die Kopie der Zeichenfolge zuzuweisen. Die aufrufende Anwendung muss diesen Arbeitsspeicher freigeben, indem sie die LocalFree-Funktion auf dem Zeiger aufruft, der vom Aufruf von StrDup zurückgegeben wird.

Beispiele

Diese einfache Konsolenanwendung veranschaulicht die Verwendung von 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

Hinweis

Der shlwapi.h-Header definiert StrDup als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional, Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile shlwapi.h
Bibliothek Shlwapi.lib
DLL Shlwapi.dll (Version 4.71 oder höher)