Path: blob/master/philo_bonus/ft_join_args_bonus.c
882 views
/* ************************************************************************** */1/* */2/* ::: :::::::: */3/* ft_join_args_bonus.c :+: :+: :+: */4/* +:+ +:+ +:+ */5/* By: yabtaour <[email protected]> +#+ +:+ +#+ */6/* +#+#+#+#+#+ +#+ */7/* Created: 2022/05/23 00:06:42 by yabtaour #+# #+# */8/* Updated: 2022/05/23 00:06:44 by yabtaour ### ########.fr */9/* */10/* ************************************************************************** */11#include "philosophers_bonus.h"1213int ft_strlen(char *str)14{15int i;1617if (!str)18return (0);19i = 0;20while (str[i] != '\0')21i++;22return (i);23}2425char *ft_strjoin(char *s1, char *s2)26{27int i;28int j;29char *str;3031if (!s1)32{33s1 = (char *)malloc(1 * sizeof(char));34if (!s1)35return (NULL);36s1[0] = '\0';37}38if (!s2)39return (NULL);40str = malloc(ft_strlen(s1) + ft_strlen(s2) + 2);41if (!str)42return (NULL);43i = -1;44j = 0;45while (s1[++i])46str[i] = s1[i];47while (s2[j])48str[i++] = s2[j++];49str[ft_strlen(s1) + ft_strlen(s2)] = '\0';50free(s1);51return (str);52}5354char *ft_join_args(char *argv[], int argc)55{56char *args;57int i;5859i = 1;60args = NULL;61while (i < argc)62{63if (argv[i][0] == '\0')64return (NULL);65args = ft_strjoin(args, argv[i++]);66args = ft_strjoin(args, " ");67}68return (args);69}707172