blob: 0db72d069fad0e1777c5ae2c58f1f4321db14193 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#include "libft.h"
#include <stdlib.h>
char *
ft_substr (char const *s, unsigned int start, size_t len)
{
size_t slen;
size_t actual;
char *sub;
slen = ft_strlen (s);
if (start >= slen)
return (ft_strdup (""));
actual = slen - start;
if (actual > len)
actual = len;
sub = malloc (actual + 1);
if (!sub)
return (NULL);
ft_memcpy (sub, s + start, actual);
sub[actual] = '\0';
return (sub);
}
|