diff options
author | A404M <ahmadmahmoudiprogrammer@gmail.com> | 2025-01-30 04:50:11 +0330 |
---|---|---|
committer | A404M <ahmadmahmoudiprogrammer@gmail.com> | 2025-01-30 04:50:11 +0330 |
commit | e6122f465cd8b8eebcc2657321cf7cf5732408a8 (patch) | |
tree | 127d56cab08e99b0999c909db98a417656bf001f /src/utils/string.c | |
parent | 6441d6ace4b3ebdc04e3e7fee212830f783eecb0 (diff) |
added global variables (not constants)
Diffstat (limited to 'src/utils/string.c')
-rw-r--r-- | src/utils/string.c | 21 |
1 files changed, 21 insertions, 0 deletions
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)); +} |