#include <stdlib.h>
char *ft_strdup(char *src)
{
int len;
int i;
char *dest;
len = 0;
while (src[len])
{
len++;
}
dest = malloc(sizeof(char) * (len + 1));
//pas bes. de (char *)mal vu char*
if (dest == NULL)//si aloccation memoire echoue
{
return (NULL);//retourn NULL c est un controle
}
//sinon continue normalement du coup donner la suite ici fonction duplic.
i = 0;
while (src[i])
{
dest[i] = src[i];//duplicaiton src -> dans dest
i++;
}
dest[i] = '\0';
// important pas oublier sinon problem avec putstr par ex.
return (dest);
}
/*
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(void)
{
char str1[] = "Allez Alinghi!";
char *str2 = strdup(str1);
if (str2 == NULL)
{
printf("Erreur la duplication n'a pas foctionne correctemenent!!\n");
return (1);//ici pour quitter avec code de l erreur!
}
// afficher mes chaine
printf("str1 est %s\n", str1);
printf("str1 est devenu apres strdup %s\n", str2);
// Liberation de la memoire allouee par strdup
// remarque strdup cree un copie de str1, mais ne l ecrit pas 2x alors ok
free(str2);
char strbase[]="On est en demi!";
char *strnouveau;
strnouveau = ft_strdup(strbase);
printf("strbase est: %s\n", strbase);
printf("strnouveau est: %s\n", strnouveau);
free(strnouveau);
return (0);
}*/
To embed this project on your website, copy the following code and paste it into your website's HTML: