minishell
ft_strjoin.c
Go to the documentation of this file.
1
/* ************************************************************************** */
2
/* */
3
/* ::: :::::::: */
4
/* ft_strjoin.c :+: :+: :+: */
5
/* +:+ +:+ +:+ */
6
/* By: kfujita <kfujita@student.42tokyo.jp> +#+ +:+ +#+ */
7
/* +#+#+#+#+#+ +#+ */
8
/* Created: 2022/04/18 04:49:14 by kfujita #+# #+# */
9
/* Updated: 2022/04/26 00:15:06 by kfujita ### ########.fr */
10
/* */
11
/* ************************************************************************** */
12
13
#include "../ft_mem/ft_mem.h"
14
#include "
ft_string.h
"
15
#include <stdlib.h>
16
17
char
*
ft_strjoin
(
char
const
*s1,
char
const
*s2)
18
{
19
size_t
s1_len;
20
size_t
s2_len;
21
char
*p_ret;
22
23
if
(s1 == NULL)
24
s1_len = 0;
25
else
26
s1_len =
ft_strlen
(s1);
27
if
(s2 == NULL)
28
s2_len = 0;
29
else
30
s2_len =
ft_strlen
(s2);
31
p_ret = malloc(s1_len + s2_len + 1);
32
if
(p_ret == NULL)
33
return
(NULL);
34
ft_memmove
(p_ret, s1, s1_len);
35
ft_memmove
(p_ret + s1_len, s2, s2_len);
36
p_ret[s1_len + s2_len] =
'\0'
;
37
return
(p_ret);
38
}
ft_memmove
void * ft_memmove(void *dst, const void *src, size_t n)
Definition:
ft_memmove.c:16
ft_string.h
ft_strlen
size_t ft_strlen(const char *s)
Definition:
ft_strlen.c:15
ft_strjoin
char * ft_strjoin(char const *s1, char const *s2)
Definition:
ft_strjoin.c:17
libft
ft_string
ft_strjoin.c
Generated by
1.9.1