Nom de la fonction : strdup
Fichier d'en-tête : <string.h>
Prototype de fonction : char *strdup(const char *str);
Fonction : Copiez la chaîne dans l'espace nouvellement créé. Cette fonction utilisera d'abord malloc() pour configurer la même taille d'espace que la chaîne str du paramètre, puis copiera le contenu de la chaîne str du paramètre dans l'adresse mémoire, puis renverra l'adresse. . Cette adresse peut enfin être libérée en utilisant free().
Paramètres : char *str est la chaîne à copier
Valeur de retour : renvoie un pointeur de chaîne, qui pointe vers la nouvelle adresse de chaîne après la copie. Si NULL est renvoyé, cela indique une mémoire insuffisante.
Remarque : Il ne s'agit pas d'une fonction de bibliothèque standard et ne peut être utilisée que sous Windows (VC, MinGW, etc.). Elle doit être définie par vous-même dans Linux GCC.
Exemple de programme : copiez la chaîne string dans dup_str et affichez le résultat
#include<string.h>#include<stdio.h>#include<stdlib.h>intmain(void){char*dup_str,*string=www.dotcpp.com;dup_str=strdup(string);printf(%s n,dup_str);free(dup_str);return0;}
Résultats en cours d'exécution :
www.dotcpp.com