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