Itoa function in C
0 344
The itoa function in C is a non-standard function used to convert an integer to a string.
It takes an integer (value), a character array (str) where the resulting string will be stored, and a base (base) for the conversion.
The function returns a pointer to the resulting null-terminated string (str).
Syntax of itoa in C:
char* itoa(int value, char* str, int base);
value: The integer to be converted.
str: A pointer to a character array where the resulting string will be stored.
base: The base for conversion (commonly 10 for decimal, 2 for binary, etc.).
Return Value:
A pointer to the resulting null-terminated string str.
Example:
// Program for itoa in C #include<stdio.h>Output:#include<stdlib.h> // Non-standard itoa function declaration char* itoa(int value, char* str, int base); int main() { int num1 = 12345; // An integer int num2 = -6789; // A negative integer char str1[20]; // String to hold the result for num1 char str2[20]; // String to hold the result for num2 // Convert integers to strings itoa(num1, str1, 10); // Convert num1 to decimal itoa(num2, str2, 10); // Convert num2 to decimal // Print the results printf("Integer: %d, String: %s\n", num1, str1); printf("Integer: %d, String: %s\n", num2, str2); return 0; } // Non-standard itoa function implementation char* itoa(int value, char* str, int base) { // Handle 0 case if (value == 0) { str[0] = '0'; str[1] = '\0'; return str; } // Handle negative numbers int isNegative = 0; if (value < 0 && base == 10) { isNegative = 1; value = -value; } int i = 0; while (value != 0) { int rem = value % base; str[i++] = (rem > 9) ? (rem - 10) + 'a' : rem + '0'; value = value / base; } // Add negative sign for base 10 if (isNegative) { str[i++] = '-'; } str[i] = '\0'; // Reverse the string int start = 0; int end = i - 1; while (start < end) { char temp = str[start]; str[start] = str[end]; str[end] = temp; start++; end--; } return str; }
Integer: 12345, String: 12345 Integer: -6789, String: -6789
In this program:
We've implemented the itoa function to convert an integer to a string.
We use this function to convert two integers (num1 and num2) to decimal strings.
We print the original integers along with their string representations.
Share:
Comments
Waiting for your comments