/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ft-strcapitalize.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: jayang <[email protected]> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2022/02/06 13:29:35 by jayang #+# #+# */
/* Updated: 2022/02/07 13:24:37 by jayang ### ########.fr */
/* */
/* ************************************************************************** */
#include <unistd.h>
int check_special(char c)
{
if (' ' <= c && c <= '/')
return (1);
if (':' <= c && c <= '@')
return (1);
if ('[' <= c && c <= '\\'')
return (1);
if ('{' <= c && c <= '}')
return (1);
return (0);
}
char *ft_strcapitalize(char *str)
{
int i;
int check;
i = 0;
check = 1;
while (str[i])
{
if (check && ('a' <= str[i] && str[i] <= 'z'))
str[i] -= 32;
else if ((check == 0) && ('A' <= str[i] && str[i] <= 'Z'))
str[i] += 32;
check = 0;
if (check_special(str[i]))
check = 1;
i++;
}
return (str);
}