itoa is not part of the c or c++ standard, after all these years. Ain't that a kick in the head?
defined in
stdlib.hConvert integer to string.
Converts an integer
value to a null-terminated string using the specified
radix and stores the result in the given
buffer.
If
radix is 10 and
value is negative the string is preceded by the minus sign (-). With any other
radix,
value is always considered unsigned.
buffer should be large enough to contain any possible value: (sizeof(int)*8+1) for radix=2, i.e. 17 bytes in 16-bits platforms and 33 in 32-bits platforms.
Syntaxchar *itoa( int value, char *buffer, int radix )
Parameters
- valueValue to be represented as a string.
- buffer Buffer where to store the resulting string.
- radix Numeral radix in which value has to be represented, between 2 and 36.
Return ValueA pointer to the string.
Portability
Not defined in ANSI-C. Supported by some compilers.
Example
/* itoa example */
- include
- include
int main ()
{
int i;
char buffer [33];
printf ("Enter a number: ");
scanf ("%d",&i);
itoa (i,buffer,10);
printf ("decimal: %s\n",buffer);
itoa (i,buffer,16);
printf ("hexadecimal: %s\n",buffer);
itoa (i,buffer,2);
printf ("binary: %s\n",buffer);
return 0;
}
Output:
Enter a number: 1750
decimal: 1750
hexadecimal: 6d6
binary: 11011010110
See also: