int ft_atoi(const char *str) { int i; int res; int neg; i = 0; res = 0; neg = 0; while (ft_sp(str[i]) || (str[i] == '+' && ft_isdigit(str[i + 1]))) i++; if (str[i] == '-') { neg = 1; i++; } while (ft_isdigit(str[i])) { res += (str[i] - '0'); if (str[i + 1] && ft_isdigit(str[i + 1])) res *= 10; i++; } if (neg == 1) res *= -1; return (res); }
char *ft_strtrim(const char *s) { char *dst; size_t i; size_t e; if (!s) return (NULL); i = 0; while (ft_sp(*s++)) i++; s -= i + 1; e = ft_strlen(s) - 1; if (!*s || e == i - 1) return (dst = ft_strnew(1)); if (i != (e + 1)) while (ft_sp(s[e])) e--; dst = ft_strsub(s, i, (e - i + 1)); return (dst); }