Accepts +-0123456789 leading blanks and converts to integer.
int atoi(const char *str );
The string str is converted to an integer (type int).
Any initial whitespace characters are skipped.
The number may consist of an optional sign and a string of digits.
Conversion stops when the first unrecognized character is reached.
int atoi (const char * str);
This function has the following parameter.
The function returns the converted integral number as an int value.
If the converted value would be out of the range of representable values by an int, it causes undefined behavior.
#include <stdio.h> /* printf, fgets */
#include <stdlib.h> /* atoi */
/*from ww w .j a v a 2 s . c o m*/
int main ()
{
int i;
char buffer[256];
printf ("Enter a number: ");
fgets (buffer, 256, stdin);
i = atoi (buffer);
printf ("The value entered is %d. Its double is %d.\n",i,i*2);
return 0;
}
The code above generates the following result.
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
printf("%i\n", atoi(" -123junk"));
}
The code above generates the following result.