• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * strndup.c
3  */
4 
5 #include <string.h>
6 #include <stdlib.h>
7 
strndup(const char * s,size_t n)8 char *strndup(const char *s, size_t n)
9 {
10     int l = n > strlen(s) ? strlen(s) + 1 : n + 1;
11     char *d = malloc(l);
12 
13     if (d)
14 	memcpy(d, s, l);
15     d[n] = '\0';
16     return d;
17 }
18