X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/d1b1c8d9119229dbeed06cd252917e54a1cb77f6..7bc179c25a1a0b7053959a7b7f2f530da1edbf13:/lunaix-os/libs/klibc/itoa.c diff --git a/lunaix-os/libs/klibc/itoa.c b/lunaix-os/libs/klibc/itoa.c index cbffd52..9eaf55b 100644 --- a/lunaix-os/libs/klibc/itoa.c +++ b/lunaix-os/libs/klibc/itoa.c @@ -5,12 +5,12 @@ char base_char[] = "0123456789abcdefghijklmnopqrstuvwxyz"; static char* -__uitoa_internal(unsigned int value, char* str, int base, unsigned int* size) +__uitoa_internal(unsigned long value, char* str, int base, unsigned int* size) { unsigned int ptr = 0; do { str[ptr] = base_char[value % base]; - value = value / base; + value = value / (unsigned long)base; ptr++; } while (value); @@ -27,11 +27,11 @@ __uitoa_internal(unsigned int value, char* str, int base, unsigned int* size) } static char* -__itoa_internal(int value, char* str, int base, unsigned int* size) +__itoa_internal(long value, char* str, int base, unsigned int* size) { if (value < 0 && base == 10) { str[0] = '-'; - unsigned int _v = (unsigned int)(-value); + unsigned long _v = (unsigned long)(-value); __uitoa_internal(_v, str + 1, base, size); } else { __uitoa_internal(value, str, base, size); @@ -41,7 +41,7 @@ __itoa_internal(int value, char* str, int base, unsigned int* size) } char* -itoa(int value, char* str, int base) +itoa(long value, char* str, int base) { return __itoa_internal(value, str, base, NULL); } \ No newline at end of file