commit 49321cea4acb398e89ba246da73a1955145c7219 Author: tosu Date: Thu Mar 30 19:23:07 2023 +0200 ex00 diff --git a/ex00/ft_strdup.c b/ex00/ft_strdup.c new file mode 100644 index 0000000..5e7dcda --- /dev/null +++ b/ex00/ft_strdup.c @@ -0,0 +1,63 @@ +#include + +char *ft_strcpy(char *dest, char *src) +{ + char *o_dest; + + o_dest = dest; + while (*src) + *dest++ = *src++; + *dest = 0; + return (o_dest); +} + +int ft_strlen(char *str) +{ + int size; + + size = 0; + while (*str++) + ++size; + return (size); +} + +char *ft_strdup(char *src) +{ + char *new_str; + + new_str = malloc(8 * ft_strlen(src)); + ft_strcpy(new_str, src); + return (new_str); +} + + +/* //// +#include + +int main(void) +{ + char *str1; + char *stra; + char *strb; + char *str2; + char *str3; + char *str4; + + str1 = "The String"; + stra = "The String"; + strb = str1; + str2 = ft_strdup(str1); + str3 = ft_strdup(str1); + str4 = ft_strdup(str2); + printf("str1 value: %s, str1 address: %p\n", str1, str1); + printf("stra value: %s, stra address: %p (==str1)\n", stra, stra); + printf("strb value: %s, strb address: %p (==str1)\n", strb, strb); + printf("str2 value: %s, str2 address: %p (diff)\n", str2, str2); + printf("str3 value: %s, str3 address: %p (diff)\n", str3, str3); + printf("str4 value: %s, str4 address: %p (diff)\n", str4, str4); + free(str2); + free(str3); + free(str4); + return (0); +} +*/ //// diff --git a/ex00/main b/ex00/main new file mode 100755 index 0000000..e199a1f Binary files /dev/null and b/ex00/main differ