2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS system libraries
4 * FILE: lib/msvcrt/stdlib/itoa.c
5 * PURPOSE: converts a integer to ascii
9 * 1998: Added ltoa Boudewijn Dekker
11 /* Copyright (C) 1995 DJ Delorie, see COPYING.DJ for details */
13 #include <msvcrt/errno.h>
14 #include <msvcrt/stdlib.h>
15 #include <msvcrt/internal/file.h>
18 char* _itoa(int value, char* string, int radix)
27 if (radix > 36 || radix <= 1)
33 sign = (radix == 10 && value < 0);
38 while (v || tp == tmp)
49 string = (char*)malloc((tp-tmp)+sign+1);
60 char* _ltoa(long value, char* string, int radix)
69 if (radix > 36 || radix <= 1)
75 sign = (radix == 10 && value < 0);
79 v = (unsigned long)value;
80 while (v || tp == tmp)
91 string = (char*)malloc((tp-tmp)+sign+1);
102 char* _ultoa(unsigned long value, char* string, int radix)
107 unsigned long v = value;
110 if (radix > 36 || radix <= 1)
116 while (v || tp == tmp)
123 *tp++ = i + 'a' - 10;
127 string = (char*)malloc((tp-tmp)+1);