diff options
Diffstat (limited to 'newlib/libc/stdlib/utoa.c')
-rw-r--r-- | newlib/libc/stdlib/utoa.c | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/newlib/libc/stdlib/utoa.c b/newlib/libc/stdlib/utoa.c deleted file mode 100644 index 7738c2321..000000000 --- a/newlib/libc/stdlib/utoa.c +++ /dev/null @@ -1,76 +0,0 @@ -/* -FUNCTION -<<utoa>>---unsigned integer to string - -INDEX - utoa - -ANSI_SYNOPSIS - #include <stdlib.h> - char *utoa(unsigned <[value]>, char *<[str]>, int <[base]>); - char *__utoa(unsigned <[value]>, char *<[str]>, int <[base]>); - -DESCRIPTION -<<utoa>> converts the unsigned integer [<value>] to a null-terminated string -using the specified base, which must be between 2 and 36, inclusive. -<[str]> should be an array long enough to contain the converted -value, which in the worst case is sizeof(int)*8+1 bytes. - -RETURNS -A pointer to the string, <[str]>, or NULL if <[base]> is invalid. - -PORTABILITY -<<utoa>> is non-ANSI. - -No supporting OS subroutine calls are required. -*/ - -#include <stdlib.h> - -char * -_DEFUN (__utoa, (value, str, base), - unsigned value _AND - char *str _AND - int base) -{ - const char digits[] = "0123456789abcdefghijklmnopqrstuvwxyz"; - int i, j; - unsigned remainder; - char c; - - /* Check base is supported. */ - if ((base < 2) || (base > 36)) - { - str[0] = '\0'; - return NULL; - } - - /* Convert to string. Digits are in reverse order. */ - i = 0; - do - { - remainder = value % base; - str[i++] = digits[remainder]; - value = value / base; - } while (value != 0); - str[i] = '\0'; - - /* Reverse string. */ - for (j = 0, i--; j < i; j++, i--) - { - c = str[j]; - str[j] = str[i]; - str[i] = c; - } - - return str; -} - -char * -_DEFUN (utoa, (value, str, base), - unsigned value _AND - char *str _AND - int base) -{ - return __utoa (value, str, base); -} |