Convert an unsigned binary integer to a string
#include <stdlib.h>
char* utoa( unsigned int value,
char* buffer,
int radix );
libc
The utoa() function converts the unsigned binary integer value into the equivalent string in base radix notation, storing the result in the character array pointed to by buffer. A null character is appended to the result. The size of buffer must be at least (8 * sizeof(int) + 1) bytes when converting values in base 2. That makes the size 17 bytes on 16-bit machines, and 33 bytes on 32-bit machines.
A pointer to the result.
#include <stdio.h>
#include <stdlib.h>
int main( void )
{
int base;
char buffer[18];
for( base = 2; base <= 16; base = base + 2 )
printf( "%2d %s\n", base,
utoa( (unsigned) 12765, buffer, base ) );
return EXIT_SUCCESS;
}
produces the output:
2 11000111011101 4 3013131 6 135033 8 30735 10 12765 12 7479 14 491b 16 31dd
| Safety: | |
|---|---|
| Cancellation point | No |
| Interrupt handler | Yes |
| Signal handler | Yes |
| Thread | Yes |
atoi(), atol(), itoa(), ltoa(), sscanf(), strtol(), strtoul(), ultoa()