From d699849b2360f90c61f645c5d4d4232cd3e1c962 Mon Sep 17 00:00:00 2001 From: Thomas Vanbesien Date: Sat, 21 Feb 2026 12:39:20 +0100 Subject: Initial commit: libft Part 1 with tests and documentation Reimplements 24 libc functions with Doxygen-documented header and test suite comparing against libc. --- ft_atoi.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 ft_atoi.c (limited to 'ft_atoi.c') diff --git a/ft_atoi.c b/ft_atoi.c new file mode 100644 index 0000000..2fe091a --- /dev/null +++ b/ft_atoi.c @@ -0,0 +1,26 @@ +#include "libft.h" + +int +ft_atoi (const char *nptr) +{ + int sign; + int result; + + result = 0; + sign = 1; + // Skip isspace() characters: space, \t, \n, \v, \f, \r. + while (*nptr == ' ' || (*nptr >= '\t' && *nptr <= '\r')) + nptr++; + if (*nptr == '-' || *nptr == '+') + { + if (*nptr == '-') + sign = -1; + nptr++; + } + while (*nptr >= '0' && *nptr <= '9') + { + result = result * 10 + (*nptr - '0'); + nptr++; + } + return (result * sign); +} -- cgit v1.2.3