From 4b178c0feb4c415be36be0e4c0def8c447ed42af Mon Sep 17 00:00:00 2001 From: Marvin Borner Date: Fri, 22 Nov 2019 22:17:54 +0100 Subject: Added the most awesome c lib --- src/mlibc/stdlib/atoi.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 src/mlibc/stdlib/atoi.c (limited to 'src/mlibc/stdlib/atoi.c') diff --git a/src/mlibc/stdlib/atoi.c b/src/mlibc/stdlib/atoi.c new file mode 100644 index 0000000..34f9991 --- /dev/null +++ b/src/mlibc/stdlib/atoi.c @@ -0,0 +1,23 @@ +#include +#include +#include +#include + +int atoi(char *str) { + size_t s_str = strlen(str); + if (!s_str) return 0; + + uint8_t negative = 0; + if (str[0] == '-') negative = 1; + + size_t i = 0; + if (negative) i++; + + int ret = 0; + for (; i < s_str; i++) { + ret += (str[i] - '0') * pow(10, (s_str - i) - 1); + } + + if (negative) ret *= -1; + return ret; +} \ No newline at end of file -- cgit v1.2.3