Partager via


Fonction StrDupA (shlwapi.h)

Duplique une chaîne.

Syntaxe

PSTR StrDupA(
  PCSTR pszSrch
);

Paramètres

pszSrch

Type : PCTSTR

Pointeur vers une chaîne de caractères constante terminée par un caractère null.

Valeur retournée

Type : PTSTR

Retourne l’adresse de la chaîne qui a été copiée, ou NULL si la chaîne ne peut pas être copiée.

Remarques

StrDup alloue au stockage la taille de la chaîne d’origine. Si l’allocation de stockage réussit, la chaîne d’origine est copiée dans la chaîne dupliquée.

Cette fonction utilise LocalAlloc pour allouer de l’espace de stockage à la copie de la chaîne. L’application appelante doit libérer cette mémoire en appelant la fonction LocalFree sur le pointeur retourné par l’appel à StrDup.

Exemples

Cette application console simple illustre l’utilisation de 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

Notes

L’en-tête shlwapi.h définit StrDup en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel, Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête shlwapi.h
Bibliothèque Shlwapi.lib
DLL Shlwapi.dll (version 4.71 ou ultérieure)