Updated: April 19, 2023 |
Convert an integer into a string, using a given base
#include <stdlib.h> char* itoa( int value, char* buffer, int radix );
8 × sizeof( int ) + 1
bytes when converting values in base 2 (binary).
2 <= radix <= 36
If the value of radix is 10, and value is negative, then a minus sign is prepended to the result.
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The itoa() function converts the integer value into the equivalent string in base radix notation, storing the result in the specified buffer. The function terminates the string with a NUL character.
A pointer to the resulting string, or NULL if an error occurs (errno is set).
#include <stdio.h> #include <stdlib.h> int main( void ) { char buffer[20]; int base; for( base = 2; base <= 16; base += 2 ) { printf( "%2d %s\n", base, itoa( 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 |