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