diff options
author | JozanLeClerc <bousset.rudy@gmail.com> | 2020-09-29 18:51:47 +0200 |
---|---|---|
committer | JozanLeClerc <bousset.rudy@gmail.com> | 2020-09-29 18:51:47 +0200 |
commit | dd00a5a6e96052a8fd6120ce1bcedcce879441d6 (patch) | |
tree | d122b5978901afdd340c6b5831203536e0b2625c /libft/src | |
parent | Order update (diff) | |
download | 42-minishell-dd00a5a6e96052a8fd6120ce1bcedcce879441d6.tar.gz 42-minishell-dd00a5a6e96052a8fd6120ce1bcedcce879441d6.tar.bz2 42-minishell-dd00a5a6e96052a8fd6120ce1bcedcce879441d6.tar.xz 42-minishell-dd00a5a6e96052a8fd6120ce1bcedcce879441d6.tar.zst 42-minishell-dd00a5a6e96052a8fd6120ce1bcedcce879441d6.zip |
Atoi update
Diffstat (limited to 'libft/src')
-rw-r--r-- | libft/src/ft_atoi.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/libft/src/ft_atoi.c b/libft/src/ft_atoi.c index 7a97eae..3640578 100644 --- a/libft/src/ft_atoi.c +++ b/libft/src/ft_atoi.c @@ -13,30 +13,31 @@ #include <libft.h> #include <inttypes.h> -static int8_t - ft_setsign(const char c) +static int8_t ft_setsign(const char c) { int8_t sign; sign = 1; if (c == '-') + { sign = -1; + } return (sign); } -static uint8_t - ft_seti(const char *str) +static uint8_t ft_seti(const char str[]) { uint8_t i; i = 0; - while (ft_isspace(str[i])) + while (ft_isspace(str[i]) == TRUE) + { i++; + } return (i); } -int - ft_atoi(const char *str) +int ft_atoi(const char str[]) { uint8_t i; int8_t sign; @@ -47,12 +48,14 @@ int sign = 1; if (str[i] == '+' || str[i] == '-') sign = ft_setsign(str[i++]); - while (ft_isdigit(str[i])) + while (str[i] != '\0' && ft_isdigit(str[i]) == TRUE) { if (nb * 10 + (str[i] - 48) < nb) { if (sign < 0) + { return (0); + } return (-1); } nb = nb * 10 + (str[i] - 48); |