1 #include <stdlib.h> 2 #include <string.h> 3 strdup(const char * s)4 char *strdup(const char *s) 5 { 6 size_t l = strlen(s); 7 char *d = malloc(l+1); 8 if (!d) return NULL; 9 return memcpy(d, s, l+1); 10 } 11