From e6122f465cd8b8eebcc2657321cf7cf5732408a8 Mon Sep 17 00:00:00 2001 From: A404M <ahmadmahmoudiprogrammer@gmail.com> Date: Thu, 30 Jan 2025 04:50:11 +0330 Subject: added global variables (not constants) --- src/utils/string.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'src/utils/string.c') diff --git a/src/utils/string.c b/src/utils/string.c index e01d1b6..5f9b7de 100644 --- a/src/utils/string.c +++ b/src/utils/string.c @@ -1,4 +1,5 @@ #include "string.h" +#include "memory.h" #include <stdint.h> #include <string.h> @@ -30,3 +31,23 @@ uint64_t decimalToU64(char *str_begin, char *str_end, bool *success) { *success = true; return result; } + +char *u64ToString(uint64_t value) { + char *str = a404m_malloc(21 * sizeof(*str)); + size_t i = 0; + + do { + str[i] = (value % 10) + '0'; + value /= 10; + ++i; + } while (value != 0); + + for (size_t j = 0; j < i / 2; ++j) { + char tmp = str[j]; + str[j] = str[i - j - 1]; + str[i - j - 1] = tmp; + } + str[i] = '\0'; + + return a404m_realloc(str, (i + 1) * sizeof(*str)); +} -- cgit v1.2.3