#include<stdio.h>
int myatoi(char * str){
int sign = 0;
int result = 0;
if (str == NULL)
{
printf("Invalid input.\n");
return -1;
}
if ( *str=="" || *str==" ")
{
str++;
}
sign = (*str == '-')? -1 : 1;
if ( *str == '+' || *str == '-')
{
str++;
}
while (*str >= '0' && *str <= '9')
{
result = result*10 + (*str-'0'); //char '0' ==> int 48
str++;
}
return result*sign;
}
int main()
{
char str[]={"12345"};
printf("char:\"%s\" to int:%d\n", str, myatoi(str) );
return 0;
}
[root@allinone01 c]# gcc myatoi.c
[root@allinone01 c]# ./a.out
char:“12345” to int:12345
[root@allinone01 c]#