(1)字符串转化为整数,首先要判断正负数,复数的第一个字符为 '-' ,要将这一位去掉,并记录一个 flag = -1;
(2)确定字符串长度,比如字符串 123 ,长度为3,最高位为百位,依次是十位,个位。转化为整数就是: 1 * 100 + 2 * 10 + 3;
代码如下:
int a_toi(char a[10]);
int main(){
char a[10];
int x = 0;
gets(a);
x = a_toi(a);
printf("%d\n",x);
return 0;
}
int a_toi(char a[10])
{
int i = 0;
int x = 0;
int flag = 1;
int len_1 = 1;
int len = 0;
len = strlen(a);
len--;
if(a[0] == '-')
{
len--;
flag = -1;
i = 1;
}
while(len--) len_1 = len_1 * 10;
while(a[i])
{
x += len_1 * ((int)(a[i] - '0')) ;
len_1 = len_1 / 10;
i++;
}
return x * flag;
}